Linux での PostgreSQL の構成
- Linux システムでの PostgreSQL の基本設定
- PostgreSQL Linux にまだ存在しない場合はユーザー名を作成する
-
PSQL シェルで
ROLE
とDATABASE
を作成する -
PORT CONNECT
ツールを使用してデータベースにアクセスする - Linux で PostgreSQL を構成するさまざまな方法
このチュートリアルでは、Linux で PostgreSQL をセットアップする方法を説明します。 詳細なセットアップでは、Ubuntu または Fedora、Bodhi、PepperMint、BackBox などの他の Linux ディストリビューションに焦点を当てます。
Linux システムでの PostgreSQL の基本設定
- ターミナルから PostgreSQL をインストールします。
Ubuntu、Debian、または Mint の場合:
指図:
sudo apt-get install postgresql
Arch Linux の場合:
指図:
sudo pacman -S postgresql
Fedora、Red Hat などの YUM
インストールの場合は、次の手順を実行する必要があります。
- ここで
CURL
コマンドの PostgreSQL バージョンURL
を取得します: URL。 URL
を取得したら、このURL
にCURL
リクエストを発行してリポジトリをダウンロードします。
指図:
curl -O [url]
- 次に、RPM をインストールします。
指図:
rpm -ivh [rpm file name]
このディストリビューションが必要な場合は、後でパッケージをダウンロードすることもできます。
- ユーザー Postgres を使用してデータベースに接続します。
PostgreSQL インストールの bin ディレクトリにリンクするコマンドを発行しましょう。
指図:
cd BINPATH (most probably: /var/lib/postgresql/12/main)
パスに入ったら、SUDO -U
コマンドを実行してデータベースに接続します。 次のようにクエリを実行します。
sudo -u postgres psql template1
TEMPLATE1
はデフォルトのデータベースですが、上記のクエリの TEMPLATE1
の代わりに定義されているものを使用できます。 接続すると、指定したデータベースに入ります。
- データベース
POSTGRES
のパスワードを設定します。
セッションに入ると、次のようなことがわかります。
postgres=# or template1=#
これは、データベース セッションにログインしていることを意味します。 次のように ALTER
ステートメントを使用して、ルート データベース POSTGRES
のパスワードを設定しましょう。
ALTER USER postgres with encrypted password '[YOUR_PASSWORD]';
パスワードが変更されると、次の出力が返されます。
出力:
ALTER ROLE
\q
コマンドを使用してセッションからログアウトし、再度ログインして目的の変更を確認します。
- 接続のための
PG_HBA.CONF
の変更
Linux 内の任意のファイルを変更するには、ファイルを変更するためのコンソール エディターである VIM
を使用します。 VIM
がインストールされていない場合は、以下のコマンドをダウンロードして実行できます。
指図:
sudo apt install VIM;
VIM
を使用して、ディレクトリ内の PG_HBA.CONF
ファイルを編集します。 CD
コマンドを使用して MAIN
ディレクトリにアクセスできないようにします。
指図:
sudo vim \var\lib\postgresql\12\main\pg_hba.conf
直線が表示され、内部にデータがない場合は、次の行をファイルに追加してください。
local all postgres md5
次に、ESC
を押して :wqa
と入力し、エディタから EXIT
にします。
- データベースの作成と Postgres としてのログイン
新しいデータベースを作成するには、次のコマンドを使用します。
sudo -u postgres createdb NEW_DB
確認するには、以下のコマンドを使用してパスワードでログインします。
psql - U postgres -W
POSTGRES
の正しいパスワードを入力した後でも、次のエラーが返される場合があります。
psql: error: FATAL: Peer authentication failed for user 'postgres'
これは完全に、PG_HBA.CONF
で接続の PEER
オプションを変更していないことが原因です。
Linux で PostgreSQL セッションを実行するために必要なのはこれだけです。 以下で説明する他の方法と方法もあります。
PostgreSQL Linux にまだ存在しない場合はユーザー名を作成する
一部のバージョンでは、次のコマンドでユーザーを CREATE
します。
指図:
sudo -u template1 createuser --superuser [user_name]
ユーザーが作成されると、最初にパスワードなしで簡単にログインできます。 ALTER
ステートメントを使用して、後でパスワードを設定します。
POSTGRES
ユーザーは、システムに PostgreSQL をインストールするための root ユーザーとして機能します。 基になるファイルへの書き込みアクセスが必要であり、より高度なセキュリティ機能に使用できます。
PSQL シェルで ROLE
と DATABASE
を作成する
PSQL
シェルにログインしたら、次のクエリを使用して新しいデータベースまたはユーザーを CREATE
できます。
CREATE ROLE [user_name] LOGIN PASSWORD 'abc123';
CREATE DATABASE [database name] WITH OWNER = [user_name];
PORT CONNECT
ツールを使用してデータベースにアクセスする
別のシステムのユーザーとして PostgreSQL セッションに接続するために利用できる別の方法は、次のコマンドを使用することです。
$ psql -h [host_name] -d [database_name] -U [_username] -p [port_number]
これは、さまざまなユーザーをシステムに接続するのに役立ちます。 このコマンドを使用して、サーバーでホストされている PostgreSQL セッションで実行するようにユーザーを構成し、クエリを発行してそのデータベースで作業できます。
接続先の USER
を次のように指定するとともに、接続先の DATABASE
を指定する必要がある場合があります。
psql -U [user_name] -d [db_name]
Linux で PostgreSQL を構成するさまざまな方法
構成は簡単で効率的であるはずです。 ユーザーとして PSQL
に接続しようとするとき、常に最初に PATH
を指定してから接続を確立する必要がある場合があります。
これは、以下を使用して簡単に行うことができます。
export PATH=$PATH: [our_bin_directory_path]
この BIN_DIRECTORY
はほとんどの場合、var/lib/postgresql/..
またはインストール時に作成される同様のフォルダーです。
PATH
変数を設定したら、SERVICE
を機能させるための初期化に取り掛かります。 ほとんどの場合、これは自動的に行われますが、念のため、次のように処理を進めることができます。
//initialization
sudo service postgresql-[version_number] initdb
//starting
sudo service postgresql-[version_number] start
FEDORA
または YUM
システムでは、コマンドは次のように発行できます。
sudo systemctl start postgresql-[version_number]
sudo systemctl enable postgresql-[version_number]
PGADMIN
を Fedora やその他のシステムにインストールして、作業を楽にすることもできます。
Hello, I am Bilal, a research enthusiast who tends to break and make code from scratch. I dwell deep into the latest issues faced by the developer community and provide answers and different solutions. Apart from that, I am just another normal developer with a laptop, a mug of coffee, some biscuits and a thick spectacle!
GitHub