DB开发之postgresql

1、环境变量配置:
PGLIB=/usr/local/pgsql/lib
PGDATA=$HOME/data
PATH=$PATH:/usr/local/pgsql/bin
MANPATH=$MANPATH:/usr/local/pgsql/man
export PGLIB PGDATA PATH MANPATH
 
2、启动与关闭
/usr/local/pgsql/bin/pg_ctl -D /home/postgre/data start
./pg_ctl -D /opt/postgresql/data/ -l logfile start
 
3、关闭postgres所有服务进程: killall postgres;
 
 
4、设置密码:
ALTER USER postgres WITH PASSWORD '123456';
 
 
5、外网访问设置:
 
(1)、
vi postgresql.conf
#listen_addresses = 'localhost'
改为
listen_addresses = '*'
(2)、
vi pg_hba.conf
添加
host    all         all         0.0.0.0/0      md5
(3)
重启数据库服务器
pg_ctl restart;
6、备份和还原
备份:
pg_dump -D -h localhost -U postgres database_name >/root/peter/db_sql.sql;
导出PostgreSQL数据库中的数据:
$ pg_dump -U postgres -d mydatabase -f mydatabase.sql
7、还原:
psql -h localhost -U database_name<db_sql.sql;
 
导入数据时首先创建数据库再用psql导入:
$ createdb newdatabase
$ psql -d newdatabase -U postgres -f mydatabase.sql
 
8、创建用户和删除用户
createuser -P -d -a -e edc;
dropuser edc;
 
9、设置监听自启动
vim /etc/rc.d/rc.local
su -c '/opt/postgresql/bin/pg_ctl start -D /opt/postgresql/data -l /opt/postgresql/bin/logfile' postgres
或者
su -m postgres -c '/opt/postgresql/bin/postmaster -D /opt/postgresql/data &'
 
10、设置防火墙对某个端口可访问
/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT (设置端口可访问)
/etc/rc.d/init.d/iptables save  (保持配置)
/etc/init.d/iptables restart   (重启防火墙)
/etc/init.d/iptables status  (查看状态)
chkconfig –level 35 iptables off(永久关闭防火墙)
 
也可以直接修改
/etc/sysconfig/iptables
加入
-A INPUT -p tcp -m tcp --dport 8080 -j ACCEPT
 
 
 
 
 
安装和配置PostgreSQL:
 
安装postgresql8.3.5
./configure
gmake
gmake install
adduser postgres
mkdir /usr/local/pgsql/data
chown postgres /usr/local/pgsql/data
su - postgres
/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
/usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data >logfile 2>&1 &
/usr/local/pgsql/bin/createdb test
/usr/local/pgsql/bin/psql   edc < mct.sql
 
启动PostSQL:
1.service postgresql start //若出错,要首先执行service postgresql initdb,然后再start  使数据库随系统启动:
1.chkconfig postgresql on  配置数据库自启动
 
vim /var/lib/pgsql/data/pg_hba.conf,注释所有行,然后添加如下行:
host all all 0.0.0.1/0 md5
 
vim /var/lib/pgsql/data/postgresql.conf,
 
vi postgresql.conf
#listen_addresses = 'localhost'
改为
listen_addresses = '*'
 
1、环境变量配置:
PGLIB=/usr/local/pgsql/lib
PGDATA=$HOME/data
PATH=$PATH:/usr/local/pgsql/bin
MANPATH=$MANPATH:/usr/local/pgsql/man
export PGLIB PGDATA PATH MANPATH
 
2、启动与关闭
/usr/local/pgsql/bin/pg_ctl -D /home/postgre/data restart
./pg_ctl -D /opt/postgresql/data/ -l logfile start
 
3、关闭postgres所有服务进程: killall postgres;
 
 
4、设置密码:
ALTER USER postgres WITH PASSWORD '123456';
 
 
5、外网访问设置:
 
(1)、
vi postgresql.conf
#listen_addresses = 'localhost'
改为
listen_addresses = '*'
(2)、
vi pg_hba.conf
添加
host    all         all         0.0.0.0/0      md5
(3)
重启数据库服务器
pg_ctl restart;
6、备份和还原
备份:
pg_dump -D -h localhost -U postgres database_name >/root/peter/db_sql.sql;
导出PostgreSQL数据库中的数据:
$ pg_dump -U postgres -d mydatabase -f mydatabase.sql
7、还原:
psql -h localhost -U database_name<db_sql.sql;
 
导入数据时首先创建数据库再用psql导入:
$ createdb newdatabase
$ psql -d newdatabase -U postgres -f mydatabase.sql
 
8、创建用户和删除用户
createuser -P -d -a -e edc;
dropuser edc;
 
9、设置监听自启动
vim /etc/rc.d/rc.local
su -c '/opt/postgresql/bin/pg_ctl start -D /opt/postgresql/data -l /opt/postgresql/bin/logfile' postgres
或者
su -m postgres -c '/opt/postgresql/bin/postmaster -D /opt/postgresql/data &'
 
10、设置防火墙对某个端口可访问
/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT (设置端口可访问)
/etc/rc.d/init.d/iptables save  (保持配置)
/etc/init.d/iptables restart   (重启防火墙)
/etc/init.d/iptables status  (查看状态)
chkconfig –level 35 iptables off(永久关闭防火墙)
 
也可以直接修改
/etc/sysconfig/iptables
加入
-A INPUT -p tcp -m tcp --dport 8080 -j ACCEPT
 
 
 
 
第一步 :创建超级用户
>createuser -U postgres -s -P -e sa
 
说明:
 
   -U postgres  使用 postgres 用户 创建一个超级用户 sa 
 
   -s  表示创建的是超级用户
 
   -P  表示要设置密码
 
   -e  表示命令进行回显
 
 
第二步:创建数据库
createdb -p 5432 -e -U sa mydb
-p 表示连接端口 5432
 
-e 表示命令进行回显
 
-U 创建数据库的用户名 是sa
 
mydb  数据库的名字
 
 
第三步:连接数据库:
psql -p 5432 -U sa -d mydb
 
 
 
-p 表示连接端口 5432
 
-d mydb 连接数据库 mydb
 
-U 连接数据库的用户名是sa
 
 
 
第四步:创建表
psql -p 5432 -U sa -d mydb -f ./mysql.sql
 
 
 
-p 表示连接端口 5432
 
-U 表的所有者是sa
 
-d mydb 连接数据库 mydb
 
 
 
 
 
-----mysql.sql----------------
 
CREATE TABLE mytable
(
  username text NOT NULL,
  id integer,
  CONSTRAINT mytable_pkey PRIMARY KEY (username)
)
WITH (OIDS=FALSE);
ALTER TABLE mytable OWNER TO sa;
posted @ 2015-05-04 13:42  Parishe  阅读(284)  评论(0编辑  收藏  举报