1,416 bytes added ,  13 October 2023
m
no edit summary
m →‎Initial set-up: adding of usage section
mNo edit summary
 
(9 intermediate revisions by the same user not shown)
Line 56: Line 56:


postgres=#
postgres=#
</syntaxhighlight>
= Configuration =
In order to force password when logging into postgresql console change <code>ident</code> to <code>scram-sha-256</code> in <code>/var/lib/pgsql/data/pg_hba.conf</code> for IP local connections entries.  This is the HBA (Host-based Authentication) configuration file for PostgreSQL.  Restart afterwards.
== Create a new PostgreSQL user account and a new DB ==
Create a Linux user account
<syntaxhighlight lang="bash">
$ sudo useradd puser
$ sudo passwd puser
</syntaxhighlight>
log in as the admin PostgreSQL user
<syntaxhighlight lang="bash">
$ sudo -iu postgres
</syntaxhighlight>
create a new PostgreSQL role for puser Linux user
<syntaxhighlight lang="bash">
$ createuser --interactive --pwprompt
</syntaxhighlight>
while still logged in as postgres user (admin PostgreSQL user) create a new database named appdb for puser
<syntaxhighlight lang="bash">
$ createdb -O puser appdb
</syntaxhighlight>
</syntaxhighlight>




= Usage =
= Usage =
Log into PostgreSQL console using a specific user and DB
<syntaxhighlight lang="bash">
$ sudo -iu puser
$ psql -d appdata -U puser
</syntaxhighlight>
Create a new table
<syntaxhighlight lang="psql">
puser=> CREATE TABLE demo(
id serial PRIMARY KEY,
email VARCHAR (100) UNIQUE NOT NULL,
name  VARCHAR (50) UNIQUE NOT NULL
);
</syntaxhighlight>


{| class="wikitable sortable"
{| class="wikitable sortable"
|+ PostgreSQL  
|+ PostgreSQL console commands
|-
|-
! Command !! Action !! Description or Notes
! Command !! Action !! Description or Notes
|-
|-
| <code>\q</code> || Quit ||
| class="cli" | \q || Quit ||
|-
|-
| Example || Example || Example
| class="cli" | \conninfo || Connection information || Get current connection information
|-
|-
| Example || Example || Example
| class="cli" | \d || List || List tables, views, and sequences
|-
| class="cli" | \dt || List tables ||
|}
|}
<code>\q</code>


<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
</syntaxhighlight>
</syntaxhighlight>


= Resources =
= Resources =


[[Introduction to PostgreSQL for MySQL Users]]
[[Introduction to PostgreSQL for MySQL Users]]