linux导入pgsql日志目录,Centos下PostgreSQL安装及修改数据目录

记录下在Centos7.6 安装PostgreSQL数据库,版本10.12的过程,第一次装,遇到的坑太多了,网上教程坑也多,有的版本不一样方法不一样。花了半天时间…

背景:

内网服务器,搭了个sonarqube代码审计系统,用的docker,docker跑的postgresql数据库(有坑),数据库出过两次问题,不用docker了,老大说要本地装,今天收到命令,我也没装过,中午就开搞,搞到了晚上……大概装、删、解决各种坑,晚上又改数据目录几个小时。。

安装参考:https://www.cnblogs.com/Crise2018/p/11568328.html

修改/data路径参考:http://blog.itpub.net/29654823/viewspace-2147325/

一、安装

1、查看自己的系统是否安装了postgresql数据库

命令如下: rpm -qa | grep postgresql         (因为本地有安装过,很多安装包)

查看: rpm -qal | grep postgresql  位置

删除 yum remove postgresql*

adbb652a8f22

2、开始安装

选择centos的,右键复制链接地址,服务器yum……

adbb652a8f22yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm -y

菜鸟上也有apt方法:https://www.runoob.com/postgresql/linux-install-postgresql.html

2.1查看下载的包,

yumlist |grep postgresql

安装服务:yuminstallpostgresql10-contrib postgresql10-server -y

4个包,下载的慢,10分钟吧。

adbb652a8f22

adbb652a8f22

adbb652a8f22

3、解决docker中数据库问题

因为docker,postgres占用了5432端口,不删掉没发用。所以现在开始学习docker,docker容器,里面有镜像。docker images    #可以列出当前服务器上所有存在的docker镜像

就是这个postgres,但要删掉前,先要停掉他。删除之前要确认此镜像已经没有被容器在使用,如果存在正在运行的docker容器,删除会报错“Error: container_delete: Impossible to remove a running container,please stop it first”

adbb652a8f22

docker stop (id) #停止

docker rmi (id)#删掉,docker rmi 容器id来删除一个镜像,如图所示,因为镜像是采用分层存储,所以删除时,显示很多tag。

adbb652a8f22

/usr/pgsql-10/bin/postgresql-10-setup initdb  #安装后初始化

二、启动服务!

好,还很顺利,起服务!sudo systemctl start postgresql-10  #起服务,和service postgresql-10 start 一样

sudo systemctl enable postgresql-10 service  #开机自启动

sudo systemctl status postgresql-10(service postgresql-10 status) #查看状态

adbb652a8f22

Postgresql安装目录在/usr/pgsql-10,

Postgresql的数据目录会放在/var/lib/pgsql/版本号/data目录下。(后面会改/data)

三、登录

1、登录su - postgres #切换到postgres用户下

psql #登陆数据库

ALTER USER postgres WITH PASSWORD ;#修改密码

adbb652a8f22

退出:\q

然后exit

adbb652a8f22

\l 用于查看已经存在的数据库

CREATE DATABASE dbname;  #创建数据库

Drop database dbname;  #删除数据库

adbb652a8f22

四、修改数据目录

安装完成了,但是我们要改数据目录,因为默认的/var目录空间不够,要放到data下。

1)在数据库软件安装之后,初始化数据库时候,可以指定初始化时创建的数据库的默认文件路径,(如果初始化时这么做就好了!!!!)

指定数据库存放位置和编码方式,初始化数据库:/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data

这样初始化之后,再修改配置文件postgresql.conf为修改之后的数据文件路径,就能保证以后的数据文件也在这个路径下了。

2)如果是已经初始化好了,再修改数据文件路径的,如下过程:

找到配置文件查看当前数据存储路径在哪postgres=# SHOW data_directory;

/var/lib/pgsql/10/data

停掉PGSQL

sudo service postgresql-10 stop

拷贝原来的数据路径到新的路径下sudo rsync -av /var/lib/pgsql /data/

设置用户和权限

sudo chown -R postgres:postgres /data/psql

sudo chmod 700 /data/psql

将配置文件的数据存储路径改成新的cd /data/pgsql/10/datavi

postgresql.confdata_directory=‘/data/psql/10/data’    #最重要,确实改成自己的data路径才成功。

再启动就行了

sudo service postgresql-10 start

adbb652a8f22

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值