我想在不同的文件系统上创建一个包含数据文件和wal的数据库.我想将wal放在NFS上的单独服务器上,以避免在fs /磁盘崩溃的情况下丢失数据.
沃尔夫写在哪里?
我可以通过配置将其强制到与默认位置不同的位置吗?
如果重要的话,我在9.1.
谢谢.
a_h*_*ame 12
WAL文件被写入pg_xlog数据目录内的目录.从Postgres 10开始,此目录已重命名为pg_wal
例如 /var/lib/postgresql/10/main/pg_wal
有关详细信息,请参阅手册
如果我没弄错,则无法更改此目录名称.但它可以是指向不同磁盘的符号链接.
事实上,这实际上建议调整WAL性能(参见这里:http://wiki.postgresql.org/wiki/Installation_and_Administration_Best_practices#WAL_Directory)
要将 WAL 目录复制到另一个文件路径/磁盘驱动器,请按照以下步骤操作:
/var/lib/postgresql/<version>/main/pg_wal)使用新的文件路径rsync。它将使用-a标志保留文件/文件夹权限和文件夹结构。你应该去掉训练斜线。pg_wal为pg_wal-backup( $PG_DATA)pg_wal在 Postgres 数据目录 ( $PG_DATA) 中创建指向新路径的符号链接,并将符号链接的权限更新为postgres用户pg_wal-backupPostgres 数据目录中的目录 ( $PG_DATA)sudo service postgresql stop
sudo rsync -av /var/lib/postgresql/12/main/pg_wal /<new_path>
ls -la /<new_path>
sudo mv /var/lib/postgresql/12/main/pg_wal /var/lib/postgresql/12/main/pg_wal-backup
sudo ln -s /<new_path> /var/lib/postgresql/12/main/pg_wal
sudo chown -h postgres:postgres /var/lib/postgresql/12/main/pg_wal
sudo service postgresql start && sudo service postgresql status
# Verify DB connection using your db credentials/information
psql -h localhost -U postgres -p 5432
rm -rf /var/lib/postgresql/12/main/pg_wal-backup
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12805 次 |
| 最近记录: |