show default_tablespace ;
alter system set default_tablespace='tbs_msg_data' ;
select pg_reload_conf();
show default_tablespace
show temp_tablespaces ;
alter system set temp_tablespaces='temp' ;
select pg_reload_conf();
show temp_tablespaces
Postgresql - Page 2
-
[PostgreSQL] Voir les tablespaces
-
Calcul stats PostgreSQL
for tablename in $(psql -U postgres -h $2 -d $1 -t -c "select table_name as _table from information_schema.tables t where t.table_schema='sche_admin' order by _table asc"); do
echo $tablename
psql -U postgres -h $2 -d $1 -c "analyze ${tablename};"
psql -U postgres -h $2 -d $1 -c "select count(*) ${tablename} from ${tablename};" >> compte_pgsql.log
done
En // :
vacuumdb --port=$PORT --username=$PG_USER --analyze-only --verbose --jobs=4 $PG_DATABASE
-
Démarrer le service postgres
-
[PROC]Ora2PG
-
[POSTGRESQL] Partitionnement
Super tuto pour le partitionnement de bons conseils et cas concrets :
https://www.enterprisedb.com/postgres-tutorials/strategy-migrating-partitioned-oracle-database-tables-postgresql
-
Restauration PostgreSQL
Voici la méthode de restauration pour une base de données Postgres :
On ne s'intéresse qu'aux données. Les privilèges, les utilisateurs, les rôles, les tablespaces ne sont pas impactés. Rapide et efficace. Pourra être exécutée sur demande lors d'un refresh ponctuel de base de données.
export :
pg_dump toto --create | gzip > toto.sql.gz
import :
dropdb toto
pv toto.sql.gz | gunzip | psqlAprès l'import le fichier export est supprimé.
-
Migration oracle vers postgres avec ora2pg
-
Vous avez perdu vos fichiers WAL ?
Pas de panique...
C'est la question que l'on vient de me poser lors d'un entretien.
Les fichiers WAL sont stockés sur un FS dédié et pas de chance le FS disparait...
Donc postgres crash... comment faire pour redémarrer la base de données?
Sans les WALs?
Utilisez
pg_ctl --mode=immediate
si vous devez arrêter une instance rapidement.(lire la suite)
-
Postgres
-
Pg tune et tune
Paramétrer votre architecture Postgres avec PgTune si t'as pas de tune pour payer un expert!!
Vous voulez tune votre SGBDR Postgres ! Normal.
-
Postgresql nouveautés dans chaque version
Bonjour,
On me demande de plus en plus d'effectuer des missions en postgres.
La question la plus récurrente : Avez vous des expériences en Postgres.
Les versions évoluent, de la 9.6 à la version 12 ...
Voici les nouveautés :
dans la version 11 , le Site officiel
Blog sur les nouveautés de la version 12.
Le rebuilt des indexes a été amélioré en version 12.
Le site officiel de la version 12 sortie le 03 octobre et stabilisée.
-
Méthode de sauvegarde PostgreSQL - pgBackRest
https://pgstef.github.io/2018/01/04/introduction_to_pgbackrest.html
https://fr.slideshare.net/slardiere/pgbackrest-pgdayfr
http://laetitia-avrot.blogspot.com/2017/02/faire-une-sauvegarde-avec-pgbackrest.html
http://laetitia-avrot.blogspot.com/2017/02/restaurer-avec-pgbackrest.html
-
Migration Oracle vers Postgres
-
Quelques commandes bien pratiques
-
Les Virtual Private Database (VPD) sur PGSQL
Les Virtual Private Database (VPD) sur PGSQL sont disponbiles depuis la version 9.1.
source : https://www.enterprisedb.com/blog/virtual-private-database-vpd-ppas-91
-
Show replication status in PostgreSQL
https://www.niwi.nz/2013/02/16/replication-status-in-postgresql/
select client_addr, state, sent_location, write_location, flush_location, replay_location from pg_stat_replication;
This query can output can be like this:
postgres=# select client_addr, state, sent_location,write_location, flush_location, replay_location, sync_priority from pg_stat_replication;
-
Disable Streaming Replication without restarting either master or slave
I understand the way things work currently, but would it not be more
convenient to let the replication be stopped and started from SQL commands
like:On Master:
select pg_pause_streaming_replication(slave_fqdn);
select pg_resume_streaming_replication(slave_fqdn);On Slave:
select pg_pause_streaming_replication();
select pg_pause_streaming_replication();If Cascaded Streaming Replication is confugured, then
On Slave:
select pg_start_streaming_replication(cascaded_slave_fqdn);
select pg_stop_streaming_replication(cascaded_slave_fqdn);Or an OS executable [ either in the core or a contrib module] like
pg_replication -p primary_fqdn -s slave_fqdn -a pause
pg_replication -p primary_fqdn -s slave_fqdn -a resume
pg_replication -p primary_fqdn -s slave_fqdn -a setup[ the last one would awesome; and i do not think that it is impossible, and
would be loved by one and all ] -
[script] Backup
-
Lancement de pgAdmin4
(pgadmin4) titi@serveur:~/home-global/virtualenv/myVE/lib/python2.7/site-packages/pgadmin4/pgadmin4/lib/python2.7$
cd /home/titi/home-global/virtualenv/myVE/lib/python2.7/site-packages/pgadmin4/
(pgadmin4) titi@serveur:~/home-global/virtualenv/myVE/lib/python2.7/site-packages/pgadmin4$ python pgAdmin4.py
pgAdmin 4 - Application Initialisation
======================================
The configuration database - '/home/titi/.pgadmin/pgadmin4.db' does not exist.
Entering initial setup mode...
NOTE: Configuring authentication for SERVER mode.
Enter the email address and password to use for the initial pgAdmin user account:
Email address: josselin_joly@hotmail.com
Password:
Retype password:
The configuration database has been created at /home/titi/.pgadmin/pgadmin4.db
Starting pgAdmin 4. Please navigate to http://localhost:5050 in your browser.Aide : https://stackoverflow.com/questions/41260004/error-trying-to-run-pgadmin4
-
.pgpass
Utilisation du .pgpass :
https://newfivefour.com/postgresql-pgpass-password-file.html
attention l'utilisation du .pgpass ne fonctionne pas avec une connexion LDAP :
psql: FATAL: authentification LDAP échouée pour l'utilisateur « titi»
-
Localiser ses données en Postgres
dev=# select oid,datname from pg_database;
oid | datname
-------+-----------
13275 | postgres
1 | template1
13274 | template0
16388 | dev
(4 lignes)
dev=# q
[postgres@titi 16388]$ ls -l $PGDATA/base
total 24
drwx------ 2 postgres users 4096 25 août 16:28 1
drwx------ 2 postgres users 4096 25 août 16:28 13274
drwx------ 2 postgres users 4096 4 oct. 11:01 13275
drwx------ 2 postgres users 12288 4 oct. 11:00 16388 -
Trouver un objet particulier en Postgres
select oid,relfilenode,relname from pg_class where relfilenode='16826';
oid | relfilenode | relname
-------+-------------+-----------------------
16804 | 16826 | table_toto
ou
dev=# select oid,relfilenode,relname from pg_class where relname='table_toto'; -
Afficher les fonctions internes PostgreSQL
Pour afficher les fonctions internes présentes sur le système :
db=#select * from pg_proc;
-
Afficher les verrous
SELECT pg_class.relname, pg_locks.* FROM pg_locks, pg_class WHERE pg_locks.relation = pg_class
-
Optimiser requete sql pour postgres
Installer au préalable le module : pg_stats_statements
Exécuter la requête suivante :
-
Postgresql - Install UNIX
Install de postgresql 6 sur : Debian Jessie source
Install Postgresql sur Debian Jessie : mode opératoire