CentOS 7.2安装postgresql 10.13

版本信息:
CentOS版本:CentOS Linux release 7.2.1511 (Core)
PostgreSQL版本: PostgreSQL 10.13, 64-bit

1.卸载PostgreSQL

检查pg是否已经安装,如果安装了可以通过rpm -ev xxx进行删除
rpm -qa | grep postgres
检查pg安装位置,之后手动删除文件夹

2.安装依赖

yum -y install libicu-50.2-4.el7_7.x86_64.rpm libicu-devel-50.2-4.el7_7.x86_64.rpm libicu-doc-50.2-4.el7_7.noarch.rpm

yum -y install libxslt-1.1.28-6.el7.x86_64.rpm libxslt-devel-1.1.28-6.el7.x86_64.rpm

3.安装postgresql的顺序

rpm -ivh postgresql10-libs-10.13-1PGDG.rhel7.x86_64.rpm

rpm -ivh postgresql10-10.13-1PGDG.rhel7.x86_64.rpm

rpm -ivh postgresql10-server-10.13-1PGDG.rhel7.x86_64.rpm

rpm -ivh postgresql10-contrib-10.13-1PGDG.rhel7.x86_64.rpm

4.初始化数据库

/usr/pgsql-10/bin/postgresql-10-setup initdb

5.创建数据目录并赋权

mkdir -p /data/PostgreSQL/data
chmod 755 -R /data/PostgreSQL/data
chown postgres:postgres -R /data/PostgreSQL

6.修改Environment=PGDATA配置路径

vim /usr/lib/systemd/system/postgresql-10.service
Environment=PGDATA=/data/PostgreSQL/data

重启配置生效 systemctl daemon-reload

7.修改PGDATA配置
su postgres
vi ~/.bash_profile
PGDATA=/data/PostgreSQL/data

生效
source ~/.bash_profile

8.修改监听配置,确保所有人可以连

vim /var/lib/pgsql/10/data/postgresql.conf
vi /data/PostgreSQL/data/postgresql.conf

listen_addresses = '*'

9.初始化
/usr/pgsql-10/bin/postgresql-10-setup initdb

10.启动

systemctl start postgresql-10.service

开机启动

systemctl enable postgresql-10.service

关闭开机启动

systemctl disable postgresql-10.service

image.png

11.修改远程连接配置pg_hba.conf.

先停止服务
systemctl stop postgresql-10.service

在 IPv4 local connections中增加:

vi /data/PostgreSQL/data/pg_hba.conf
vi /var/lib/pgsql/10/data/pg_hba.conf

host all all 0.0.0.0/0 trust

修改完需要重启

systemctl restart postgresql-10.service

12.使用

su - postgres #注意这里postgers 前后都有空格

以postgres 用户进入系统

登录数据库命令:
psql -U postgres #会进入postgres用户的控制台

\l 查看有哪些数据库
\c postgresql 选择postgresql 这个数据库,会提示进入连接
然后就可以用select 等语句查询了

退出数据库
\q

创建库

create database test_demo;

切换库

\c test_demo

创建新表
CREATE TABLE user_tbl(name VARCHAR(20), signup_date DATE);

插入数据
INSERT INTO user_tbl(name, signup_date) VALUES('张三', '2013-12-22');
INSERT INTO user_tbl(name, signup_date) VALUES('王五', '2021-10-01');
INSERT INTO user_tbl(name, signup_date) VALUES('周扒皮', '2008-01-06');

选择记录
SELECT * FROM user_tbl;

更新数据
UPDATE user_tbl set name = '李四' WHERE name = '张三';

删除记录
DELETE FROM user_tbl WHERE name = '李四' ;

添加栏位
ALTER TABLE user_tbl ADD email VARCHAR(40);

更新结构
ALTER TABLE user_tbl ALTER COLUMN signup_date SET NOT NULL;

更名栏位
ALTER TABLE user_tbl RENAME COLUMN signup_date TO signup;

删除栏位
ALTER TABLE user_tbl DROP COLUMN email;

表格更名
ALTER TABLE user_tbl RENAME TO backup_tbl;

删除表格
DROP TABLE IF EXISTS backup_tbl;

13.创建root用户,设置密码为123456

cd /usr/pgsql-10/bin
// 使用createuser创建用户,-s参数为超级用户
createuser root -s
// 然后给root添加密码,先连接数据库,然后添加密码,但要添加添加用户名,否则默认修改postgres的密码
psql
\password root
// 由于psql默认登陆同用户名数据库,所以我们再创建一个root数据库
create database root owner root;
// 退出psql并切换回root
\q
exit

image.png

注意:

1.创建表的时候,表名和字段名必须全小写,然后查询的时候不管全大写或全小写,或是Camel模式都不会报错。只要名称中有大写字母,或者全大写,查询时就必须保证大小写正确并用双引号包起来,否则就会报“XXX不存在”的错误:“... does not exist”

2.注意防火墙,确保5432端口可用

3.注意修改配置。先停用,修改完再启动。pg_hba.conf、postgresql.conf

参考:https://blog.csdn.net/weixin_30762363/article/details/116907767

https://www.cnblogs.com/ningy1009/p/14467751.html

https://blog.csdn.net/qq_35260875/article/details/106091776

你可能感兴趣的:(CentOS 7.2安装postgresql 10.13)