PostgreSQL資料庫中,如何查看PostgreSQL的資料目錄呢? 測驗驗證了一下,大概有下面幾種方法:
方法1:
postgres=# show data_directory;
data_directory
--------------------------- /home/postgres/pgsql_data(1 row)
方法2:
postgres=# select setting from pg_settings where name='data_directory';
setting
--------------------------- /home/postgres/pgsql_data(1 row)

方法3:
從postgresql.conf檔案中查看,但是這種方式有可能無法獲取到資料目錄的配置,因為在有些情況下,可能在postgresql.conf中沒有配置data_directory引數,
# grep data_directory postgresql.conf
方法4:
ps命令查看,如下你會看到引數-D后面的值就是PostgreSQL的資料目錄,
[root@KerryDB ~]# ps -ef | grep postgres | grep -v postgres:postgres 22998 1 0 Jan06 ? 00:00:01 /home/postgres/pgsql/bin/postgres -D /home/postgres/pgsql_data
root 26737 26692 0 11:36 pts/0 00:00:00 su - postgres
postgres 26738 26737 0 11:36 pts/0 00:00:00 -bash
postgres 26766 26738 0 11:36 pts/0 00:00:00 /bin/bash /home/postgres/pgsql/bin/psql
postgres 26768 26766 0 11:36 pts/0 00:00:00 /home/postgres/pgsql/bin/psql.bin
root 27413 26788 0 11:45 pts/1 00:00:00 grep --color=auto postgres
[root@KerryDB ~]# ps ax | grep postgres | grep -v postgres:7154 pts/3 S 0:00 su - postgres
7182 pts/3 T 0:00 /bin/bash /home/postgres/pgsql/bin/psql
7184 pts/3 T 0:00 /home/postgres/pgsql/bin/psql.bin
7506 pts/3 S+ 0:00 /bin/bash /home/postgres/pgsql/bin/psql
7508 pts/3 S+ 0:00 /home/postgres/pgsql/bin/psql.bin
7903 pts/0 S+ 0:00 grep --color=auto postgres
22998 ? S 0:00 /home/postgres/pgsql/bin/postgres -D /home/postgres/pgsql_data
其實最簡單的方法就是這個命令
[root@KerryDB ~]# ps -ax | grep postgres | grep "\-D"22998 ? S 0:01 /home/postgres/pgsql/bin/postgres -D /home/postgres/pgsql_data
方法5:
查看環境變數PGDATA,在傳統上,資料庫集簇所使用的配置和資料檔案都被一起存盤在集簇的資料目錄里,通常用PGDATA來參考(用的是可以定義它的環境變數的名字),PGDATA的一個常見位置是/var/lib/pgsql/data,由不同資料庫實體所管理的多個集簇可以在同一臺機器上共存,PGDATA目錄包含幾個子目錄以及一些控制檔案,
$ echo $PGDATA
/var/lib/pgsql/9.5/data
注意:如果沒有配置變數PGDATA的話,這種方式也是不行的,
[postgres@KerryDB ~]$ echo $PGDATA
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/246499.html
標籤:其他
下一篇:今日份知識分享:SQL 通配符
