Install Postgresql on Ubuntu
一、安装postgreSQL
1.sudo apt-get update
2.sudo apt-get install postgresql-9.6(or sudo apt-get install postgresql on ubuntu 18.04)
-
在Ubuntu下安装Postgresql后,会自动注册为服务,并随操作系统自动启动。
-
在Ubuntu下安装Postgresql后,会自动添加一个名为postgres的操作系统用户,密码是随机的。并且会自动生成一个名字为postgres的数据库,用户名也为postgres,密码也是随机的。
3.修改postgres数据库用户的密码
1) 打开客户端工具(psql)
sudo -u postgres psql (或者分两步: sudo -u postgres -i; psql)
-
其中,sudo -u postgres 是使用postgres 用户登录的意思
-
PostgreSQL数据默认会创建一个postgres的数据库用户作为数据库的管理员,密码是随机的
postgres=# ALTER USER postgres WITH PASSWORD '1qaz@WSX';
-
postgres=#为PostgreSQL下的命令提示符,--注意最后的分号;
2) 退出PostgreSQL psql客户端
postgres=# \q
4.修改ubuntu操作系统的postgres用户的密码(密码要与数据库用户postgres的密码相同)
1) 切换到root用户
su root (or "sudo -i")
2) 删除PostgreSQL用户密码
sudo passwd -d postgres
-
passwd -d 是清空指定用户密码的意思
3) 设置PostgreSQL系统用户的密码
sudo -u postgres passwd
按照提示,输入两次新密码
-
输入新的 UNIX 密码
-
重新输入新的 UNIX 密码
-
passwd:已成功更新密码
5. 修改PostgresSQL数据库配置实现远程访问
vi /etc/postgresql/9.6/main/postgresql.conf
-
监听任何地址访问,修改连接权限
#listen_addresses = 'localhost' 改为 listen_addresses = '*' (uncomment it)
-
启用密码验证
#password_encryption = on 改为 password_encryption = on (uncomment it)
vi /etc/postgresql/9.6/main/pg_hba.conf
在文档末尾加上以下内容
host all all 0.0.0.0 0.0.0.0 md5
6. 重启服务
/etc/init.d/postgresql restart (或 sudo service postgresql restart)
7.5432端口的防火墙设置
5432为postgreSQL默认的端口
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 5432 -j ACCEPT
二、 Install Pgadmin
1. 安装pgadmin3可视化数据库管理工具
sudo apt-get install pgadmin3
2. 在Terminal里输入pgadmin3,链接postgresql。然后create New Server Registration, 正确填写信息name,host,password等信息。
三、Deploy Provisioning Server PostgreSQL database
-
数据库的创建。选中Databases=>Right-Click=>Create Database
-
数据库的创建。选中Databases=>Right-Click=>Create Database。
-
建好数据库后,选中provisioning=>点击工具栏的SQL图标=>打开Query窗口,在SQL Editor Tab下的Previous queries 窗口中Paste得provision server的db.sql内容。选中本窗体的Execute pgScript按钮,执行sql脚本。在Output pane的Messages Tab下查看执行结果。Then provisioning database建立成功。
如果要删除数据库,需要中断所有connection,然后再删除数据库。 ----- 如何删除还有活动链接的数据库: (https://blog.csdn.net/liuchunming033/article/details/46878473)
在PostgreSql psql客户端上输入: SELECT pg_terminate_backend(pg_stat_activity.pid) FROM pg_stat_activity WHERE datname='数据库名' AND pid<>pg_backend_pid(); (其中datname里是你要删除链接的数据库名)
然后在删除数据库:drop database 数据库名
四、install pgAdmin 4 to ubuntu: https://linuxhint.com/install-pgadmin4-ubuntu/