postgresql data数据目录路径迁移
2018年04月24日 09:36:00 github.com/starRTC 阅读数 833
版权声明:starRTC免费im直播会议一对一视频,by elesos.com
& starRTC.com
https://blog.csdn.net/elesos/article/details/80059841
默认的数据库路径是/var/lib/pgsql/9.x/data
将现有的数据库文件全部拷贝到新的数据库路径下,然后重启
新建一个路径作为新的数据库数据路径,假如是/home/data
sudo mkdir /home/data
sudo chown -R postgres:postgres data
sudo chmod 700 data
3、文件拷贝,
首先要停止postgresql服务
sudo systemctl stop postgresql
sudo su - postgres
cp -rf /var/lib/pgsql/9.x/data/* /home/data
修改service文件
找到/usr/lib/systemd/system/postgresql*.service
修改这个文件中的
Environment=PGDATA=/var/lib/pgsql/9.4/data/
将其修改为自己的新的数据路径:
Environment=PGDATA=/home/data/
reboot系统
然后启动postgres服务
sudo systemctl restart posrgresql
1、添加RPM
1
yum install
https://download.postgresql.org/pub/repos/yum/9.5/redhat/rhel-7-x86_64/pgdg-centos95-9.5-2.noarch.rpm
2、安装PostgreSQL 9.5
1
yum install postgresql95-server postgresql95-contrib
3、初始化数据库
1
/usr/pgsql-9.5/bin/postgresql95-setup initdb
4、设置开机自启动
1
systemctl enable postgresql-9.5.service
5、启动服务
1
systemctl start postgresql-9.5.service
6、查看版本
1
psql --version
[图片]
chkconfig postgresql-9.5on
# chkconfig--list|grep postgres
来自
配置:
6.修改PostgreSQL数据库用户postgres的密码(注意不是linux系统帐号)
PostgreSQL数据库默认会创建一个postgres的数据库用户作为数据库的管理员,默认密码为空,我们需要修改为指定的密码,这里设定为’postgres’。
# su - postgres
$ psql
#ALTER USER postgres WITH PASSWORD 'postgres';
#select * from pg_shadow ;
# create database belladati_wandun;
\q 退出数据库
7.开启远程访问
vi
/var/lib/pgsql/9.5/data/postgresql.conf
修改#listen_addresses =
'localhost' 为 listen_addresses='*' 去掉前面# 号
当然,此处‘*’也可以改为任何你想开放的服务器IP
8.信任远程连接
vi
/var/lib/pgsql/9.5/data/pg_hba.conf
修改如下内容,信任指定服务器连接
# IPv4 local
connections:
host all all 127.0.0.1/32 trust
host all all 10.211.55.6/32(需要连接的服务器IP) trust
另一种方式:
host all all 127.0.0.1/32 md5
9.打开防火墙
CentOS
防火墙中内置了PostgreSQL服务,配置文件位置在/usr/lib/firewalld/services/postgresql.xml,我们只需以服务方式将PostgreSQL服务开放即可。
firewall-cmd
--add-service=postgresql --permanent 开放postgresql服务
firewall-cmd
--reload 重载防火墙 10 service postgresql-9.5 start
service postgresql-
firewall-cmd --zone=public --add-port=8080/tcp
--permanent
./pg_dump -U postgres -C -f /home/user/sample_backup
sample