本文记录安装包方式进行数据库安装
一、下载安装包
1.官网下载源码安装包,本文使用10.5版本(https://www.postgresql.org/ftp/source/v10.5/)
2.通过XFTP等工具将安装包上传到服务器指定目录(博主放在了:/pg)
二、解压安装包
1.使用指令:
tar -xvf postgresql-10.5.tar.gz
注:博主操作的服务器无法使用上述指令,必须将tar参数换为 -zxvf 才可以,可能是tar版本不同......
三、安装依赖包
yum install -y perl-ExtUtils-Embed readline-devel zlib-devel pam-devel libxml2-devel libxslt-devel openldap-devel python-devel gcc-c++ openssl-devel cmake
四、安装数据库
1.打开解压好的目录:cd /pg/postgresql-10.5
2.执行指令:./configure --prefix=/usr/local/pgsql --with-perl --with-python --with-libxml --with-libxslt
3.执行指令:gamke
4.执行指令:gamke install
五、安装PG插件
1.执行指令:cd /pg/postgresql-10.5/contrib
2.执行指令:gmake
3.执行指令:gmake install
六、加载动态库
1.执行指令:echo "/usr/local/pgsql/lib" >> /etc/ld.so.conf.d/pgsql.conf
2.执行指令:ldconfig
七、初始化数据库
1-1.创建用户组:groupadd postgres
1-2:创建用户并关联用户组:useradd -g postgres postgres
2.设置密码:passwd postgres # 两次输入密码并确认
3.创建PG数据目录:mkdir -p /pg/data
4.给用户加权限:chown -R postgres:postgres /pg
5.创建PG数据目录:
/usr/local/pgsql/bin/initdb --no-locale -U postgres -E utf8 -D /pg/data -W
(在初始化的时候,看提示添加超级用户的密码)
八、配置运行环境变量(方便管理)
1.切换到root用户:su root
2.执行指令:vim /etc/profile
3.添加以下代码:
PGDATA=/pg/data
PGHOST=127.0.0.1
PGDATABASE=postgres
PGUSER=postgres
PGPORT=5432
PATH=/usr/local/pgsql/bin:$PATH
export PATH
export PGDATA PGHOST PGDATABASE PGUSER PGPORT
4.配置文件重新加载生效:source /etc/profile
九、设置客户端监听
1、/pg/data/postgresql.conf
将listen_addresses = 'localhost' 修改为 listen_addresses = '*' (用于控制哪些ip可以连接数据库)
2、/pg/data/pg_hba.conf
新增一行记录
host all all 0.0.0.0/0 trust #trust客户端免密码,md5需要密码
十、数据库管理
启动:pg_ctl start -D /pg/data
重启:pg_ctl restart -D /pg/data
停止:pg_ctl stop -D /pg/data
强制重启:pg_ctl restart -D /pg/data -m f
强制停止:pg_ctl stop -D /pg/data -m f
注:-m f 指定快速关闭
加载配置:pg_ctl reload -D /pg/data
显示服务状态:pg_ctl status -D /pg/data
十一、连接数据库
1.连接数据库:psql -h 127.0.0.1 -U postgres -p 5432 -d postgres -W
(密码为第七步创建用户设置的密码)
十二、创建数据库
创建用户:create user aikes with password 'aikes';
创建数据库:CREATE DATABASE aikes OWNER aikes;
给用户赋权:GRANT ALL PRIVILEGES ON DATABASE aikes TO aikes;
给用户赋超级用户:ALTER USER aikes WITH SUPERUSER;
pgplus基本指令:\l:查看有哪些数据库,\du:查看有哪些用户,\c+数据库名:切换到对应数据库
\q:退出控制台