「PostgreSQL」:修訂間差異
跳至導覽
跳至搜尋
無編輯摘要 |
|||
第9行: | 第9行: | ||
== 設定 == | == 設定 == | ||
=== postgresql.conf === | |||
<syntaxhighlight lang=" | PostgreSQL 14的設定檔在<code>/etc/postgresql/14/main</code>下,其他版本的依此類推,通常會修改<code>postgresql.conf</code>將本來只聽localhost的改成聽所有界面: | ||
<syntaxhighlight lang="ini"> | |||
listen_addresses = '*' | listen_addresses = '*' | ||
</syntaxhighlight> | </syntaxhighlight> | ||
另外可以修改<code>work_mem</code>,預設是4MB,調大一點會對於排序相關的操作有幫助<ref>{{Cite web |url=https://aws.amazon.com/blogs/database/tune-sorting-operations-in-postgresql-with-work_mem/ |title=Tune sorting operations in PostgreSQL with work_mem |language=en |accessdate=2023-04-25 |date=2021-10-16}}</ref>: | |||
<syntaxhighlight lang="ini"> | |||
work_mem = 16MB | |||
</syntaxhighlight> | |||
=== pg_hba.conf === | |||
另外修改<code>pg_hba.conf</code>讓外面可以連入,這邊開放<codE>10.0.0.0/8</code>可以連: | 另外修改<code>pg_hba.conf</code>讓外面可以連入,這邊開放<codE>10.0.0.0/8</code>可以連: |
於 2023年4月25日 (二) 07:36 的修訂
PostgreSQL是一套RDBMS。
安裝
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'; wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -; sudo apt update; sudo apt install -y postgresql; sudo apt clean
設定
postgresql.conf
PostgreSQL 14的設定檔在/etc/postgresql/14/main
下,其他版本的依此類推,通常會修改postgresql.conf
將本來只聽localhost的改成聽所有界面:
listen_addresses = '*'
另外可以修改work_mem
,預設是4MB,調大一點會對於排序相關的操作有幫助[1]:
work_mem = 16MB
pg_hba.conf
另外修改pg_hba.conf
讓外面可以連入,這邊開放10.0.0.0/8
可以連:
echo "host all all 10.0.0.0/8 scram-sha-256" | sudo tee -a /etc/postgresql/14/main/pg_hba.conf; sudo service postgresql restart
常用指令
剛裝好的系統可以透過postgres
這個帳號權限連進去:
sudo -u postgres psql
建立帳號與資料庫,這邊建立資料庫的部份用兩段式建立是為了閃開操作時的權限問題[2]:
CREATE USER exampleuser WITH ENCRYPTED PASSWORD 'password';
CREATE DATABASE exampledb;
ALTER DATABASE exampledb OWNER TO exampleuser;
授權給其他使用者操作:
GRANT ALL PRIVILEGES ON DATABASE exampledb TO exampleuser;
超級使用者:
ALTER USER exampleuser WITH SUPERUSER;
管理
列出所有database_name
下的schema,類似MySQL裡的SHOW CREATE TABLE
:
pg_dump -d database_name -s -h hostname -U username
參考資料
- ↑ Tune sorting operations in PostgreSQL with work_mem. 2021-10-16 [2023-04-25] (English).
- ↑ "ERROR: must be member of role" When creating schema in PostgreSQL. [2021-11-12] (English).
外部連結
- 官方網站 (英文)