1、安装PostgreSQL,当前版本是9.3
sudo apt-get install -y postgresql
2、修改数据库文件的保存路径(也可不调,默认路径为:/var/lib/postgresql/9.3/main/base)
注意数据库版本,当前安装的是9.3版本。新建数据库存储目录为/home/postgresql/data
mkdir -p /home/postgresql/data #新的保存数据库文件的目录
cd /home/postgresql
chown -R postgres:postgres /home/postgresql
chmod -R 700 /home/postgresql
psql --version #查看数据库版本
su postgres #进入postgres用户
/usr/lib/postgresql/9.3/bin/initdb -D /home/postgresql/data #生成新的数据库路径,9.3为数据库版本
exit
修改配置文件
/etc/init.d/postgresql stop #停止数据库服务(或者用:service postgresql stop)
vi /etc/postgresql/9.3/main/postgresql.conf #打开配置文件
#data_directory = '/var/lib/postgresql/9.3/main' 改为 data_directory = '/home/postgresql/data'
#保存配置文件
/etc/init.d/postgresql start #启动数据库服务(或者用:service postgresql start)
3、修改PostgreSQL数据库的默认用户postgres的密码(注意不是linux系统帐号)
sudo -u postgres psql
ALTER USER postgres WITH PASSWORD 'postgres'; #修改PostgreSQL的登录密码为:postgres
\q #退出PostgreSQL psql客户端
其中sudo -u postgres
是使用 postgres 用户登录的意思,PostgreSQL 数据默认会创建一个 postgres 的数据库用户作为数据库的管理员,密码是随机的,所以这里把密码设定为postgres
。
4、修改linux系统的postgres用户的密码(密码与数据库用户postgres的密码相同)
sudo passwd -d postgres #删除PostgreSQL用户密码
sudo -u postgres passwd #输入两边新密码:postgres
passwd -d
是清空指定用户密码的意思,PostgreSQL 数据默认会创建一个 linux 用户 postgres,通过上面的代码修改密码为postgres
。
5、修改PostgresSQL数据库配置实现远程访问
1、打开配置文件,修改以下内容
vi /etc/postgresql/9.3/main/postgresql.conf
2、监听任何地址访问,修改连接权限
#listen_addresses = 'localhost' 改为 listen_addresses = '*'
3、启用密码验证
#password_encryption = on 改为 password_encryption = on
4、保存配置文件,退出vi编辑器
1、打开配置文件,增加以下内容,配置可访问的用户ip段
vi /etc/postgresql/9.1/main/pg_hba.conf
2、在文档末尾加上以下内容
host all all 0.0.0.0 0.0.0.0 md5
3、保存配置文件,退出vi编辑器
重启PostgreSQL数据库
/etc/init.d/postgresql restart
6、配置5432端口的防火墙设置
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 5432 -j ACCEPT
7、内部登录,管理数据库、新建数据库、用户和密码
1、登录PostgreSQL数据库
psql -U postgres -h 127.0.0.1
2、创建新用户zhangps,但不给建数据库的权限,注意用户名要用双引号,以区分大小写,密码不用
postgres=# create user "zhangps" with password '123456' nocreatedb;
3、建立数据库,并指定所有者
postgres=# create database "testdb" with owner = "zhangps";
4、退出
\q
8、外部登录,管理数据库、新建数据库、用户和密码
1.在外部命令行的管理命令,创建用户pencil
sudo -u postgres createuser -D -P pencil
输入新的密码:
再次输入新的密码:
2.建立数据库(tempdb),并指定所有者为(pencil)
sudo -u postgres createdb -O pencil tempdb
-O
设定所有者为pencil
9、安装 PostgreSQL 数据库 pgAdmin3 客户端管理程序
apt-get install -y pgadmin3
在图形界面下才可以使用,Ubuntu的图形界面启动pgadmin,只需要按下键盘的windows键,在搜索中输入pgadmin,就可以查找到它,点击就可以启动。如果要方便以后使用,可以把它拖到启动器上锁定就行了。