在psql中查看data所在目录
postgres=# show data_directory;
查询结果
data_directory
-----------------------
C:/Program Files/PostgreSQL/10/data
(1 行记录)
无法直接复制移动data文件
修改data存储目录基本方法
1、关闭PostgreSQL服务;
2、移动data文件;
3、开启PostgreSQL服务。
关闭PostgreSQL服务遇到的问题:
无法找到正确的psql命令关闭服务
postgres=# stop;
错误: 语法错误 在 "stop" 或附近的
第1行stop;
^
postgres=# service stop;
错误: 语法错误 在 "service" 或附近的
第1行service stop;
^
postgres=# service postgresql stop;
错误: 语法错误 在 "service" 或附近的
第1行service postgresql stop;
^
postgres=# stop postgresql;
错误: 语法错误 在 "stop" 或附近的
第1行stop postgresql;
^
postgres=# stop postgresql service;
错误: 语法错误 在 "stop" 或附近的
第1行stop postgresql service;
^
在查询关闭PostgreSQL服务的方法时的一些发现:
查到的一些命令
停服务:
sudo service postgresql stop
拷到新目录:
新目录权限
sudo chown -R postgres:postgres /database
$ su postgres$ /usr/lib/postgresql/9.3/bin/initdb -D /database
sudo rsync -av /var/lib/postgresql /mnt/volume-nyc1-01
sudo mv /var/lib/postgresql/9.5/main /var/lib/postgresql/9.5/main.bak
更改配置文件:
sudo nano /etc/postgresql/9.5/main/postgresql.conf
更改
data_directory = '/mnt/volume-nyc1-01/postgresql/9.5/main'
重启服务:
sudo service postgresql start
1. 修改配置文件/etc/postgresql/9.3/main/postgresql.conf
data_directory = '/home/pgdata'
2. 修改data_directory的所有者
chown -R postgres:postgres /home/pgdata
3. 这时候启动会报error
* The PostgreSQL server failed to start. Please check the log output:
2014-11-25 09:55:02 CST FATAL: data directory "/home/pgdata" has group or world access
2014-11-25 09:55:02 CST DETAIL: Permissions should be u=rwx (0700).
根据提示修改数据目录权限
chmod 700 /home/pgdata
4. 启动依然会报错
* The PostgreSQL server failed to start. Please check the log output:
2014-11-25 09:56:17 CST FATAL: "/home/pgdata" is not a valid data directory
2014-11-25 09:56:17 CST DETAIL: File "/home/pgdata/PG_VERSION" is missing.
把默认数据目录的东西拷贝过来
cp -r /var/lib/postgresql/9.3/main/* /home/pgdata/
5. 启动 service postgresql start
psql均无法执行这些命令
这些命令可能是在linux或其他操作系统中才能执行?
查找到的在Windows系统中修改data存储目录的方法:
1、通过“服务”停止PostgreSQL的服务;
2、修改注册表
首先打开注册表编辑器:
Windows+R,然后输入regedit打开注册表编辑器
对应键值位置在
"HKEY_LOCAL_MACHINESYSTEM——CurrentControlSet——Services——postgresql-x64-10——ImagePath"
将“-D”后的目录名修改为新的数据目录位置。
3、数据迁移
复制data至新的目录下。
4、在“服务”开启PostgreSQL服务。
遇到的问题:无法开启PostgreSQL服务!!!!!!!!!!!!!