How to use Postgresql
Table of Contents
System
Check service
$ sudo service postgresql status ● postgresql.service - PostgreSQL RDBMS Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled) Active: active (exited) since Sun 2025-02-02 10:21:38 JST; 56min ago Main PID: 12153 (code=exited, status=0/SUCCESS) Tasks: 0 (limit: 9312) Memory: 0B CGroup: /system.slice/postgresql.service Feb 02 10:21:38 mozuku systemd[1]: Starting PostgreSQL RDBMS... Feb 02 10:21:38 mozuku systemd[1]: Finished PostgreSQL RDBMS.
General
Quit
\q
Get List of Database
\l
Get List of Table
\d
Admin
Login as postgres
cd /tmp
sudo -u postgres psql
$ cd /tmp $ sudo -u postgres psql psql (12.22 (Ubuntu 12.22-0ubuntu0.20.04.1)) Type "help" for help. postgres=#
Create User
CREATE USER myuser WITH PASSWORD 'mypassword';
Create Database
CREATE DATABASE mydb OWNER myuser;
Grant
GRANT ALL PRIVILEGES ON DATABASE mydb TO myuser;
Remove Database
DROP DATABASE mydb;
Remove User
DROP ROLE myuser;
As User
Login as general user
psql -U myuser -d mydb -h localhost
Create Table
CREATE TABLE users ( id SERIAL PRIMARY KEY, name TEXT NOT NULL, age INT );
Check Table
\d
mydb=> \d List of relations Schema | Name | Type | Owner --------+--------------+----------+-------- public | users | table | myuser public | users_id_seq | sequence | myuser (2 rows)
Insert Data
INSERT INTO users (name, age) VALUES ('Alice', 25), ('Bob', 30);
Get Data
SELECT * FROM users;
Update Data
UPDATE users SET age = 26 WHERE name = 'Alice';
Remove Data
DELETE FROM users WHERE name = 'Bob';