002-PostgreSQL修改data存储目录失败史QAQ

2018-06-16  本文已影响0人  是小叮铛啊

在psql中查看data所在目录

postgres=# show data_directory;

查询结果

data_directory

-----------------------

C:/Program Files/PostgreSQL/10/data

(1 行记录)

无法直接复制移动data文件

无法直接复制移动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服务的方法时的一些发现:

查到的一些命令

1、postgres数据库存储目录 更改

停服务:

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

2、postgresql数据库改变data目录

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的服务;

通过“服务”停止PostgreSQL的服务

2、修改注册表

首先打开注册表编辑器:

Windows+R,然后输入regedit打开注册表编辑器

打开注册表编辑器

对应键值位置在

"HKEY_LOCAL_MACHINESYSTEM——CurrentControlSet——Services——postgresql-x64-10——ImagePath"

将“-D”后的目录名修改为新的数据目录位置。

3、数据迁移

复制data至新的目录下。

4、在“服务”开启PostgreSQL服务。

遇到的问题:无法开启PostgreSQL服务!!!!!!!!!!!!!



最终修改data存储目录的办法

卸了重装(┯_┯)

上一篇下一篇

猜你喜欢

热点阅读