SELECT I.INDEX_NAME,I.INDEX_TYPE,I.NUM_ROWS,I.DEGREE, C.COLUMN_NAME,C.COLUMN_POSITION FROM DBA_INDEXES I JOIN DBA_IND_COLUMNS C ON (I.INDEX_NAME = C.INDEX_NAME) WHERE I.OWNER='MYSCHEMA' AND I.OWNER = C.INDEX_OWNER AND I.TABLE_NAME='MYTABLE' ORDER BY I.INDEX_NAME, C.COLUMN_POSITION;
Minimalistic Oracle contains a collection of practical examples from my encounters with Oracle technologies. When relevant, I also write about other technologies, like Linux or PostgreSQL. Many of the posts starts with "how to" since they derive directly from my own personal experience. My goal is to provide simple examples, so that they can be easily adapted to other situations.
Monday, January 31, 2022
Simple SQL to list
The following SQL lists the indexes defined on a table, along with the columns and their positioning:
Wednesday, January 5, 2022
How to set a dynamic parameter in a postgreSQL database cluster
As with oracle, some parameters may be set dynamically in a postgreSQL database cluster.
A postgreSQL database cluster uses a parameter file called postgres.conf.
This file holds the cluster wide parameters.
If you set a dynamic parameter using the ALTER SYSTEM SET command, the parameter will be written to yet another file called postgres.auto.conf, which values will always override the ones parameters in the postgres.conf
Before the change, postgres.auto.conf look like this:
log_line_prefix = '[%m] – %p %q- %u@%h:%d – %a' wal_level = 'replica' hot_standby = 'on'I then make a change to the system configuration:
alter system set hot_standby_feedback=on; ALTER SYSTEMAfter this change, the file postgres.auto.conf has another entry:
log_line_prefix = '[%m] – %p %q- %u@%h:%d – %a'
wal_level = 'replica'
hot_standby = 'on'
hot_standby_feedback = 'on'
I will then have to reload the database using the function pg_reload_conf() for the new parameter to take effect:
postgres=# select pg_reload_conf(); pg_reload_conf ---------------- t (1 row)The current logfile for the postgreSQL database cluster records this fact:
[2022-01-03 14:45:23.127 CET] – 1683 LOG: received SIGHUP, reloading configuration files [2022-01-03 14:45:23.129 CET] – 1683 LOG: parameter "hot_standby_feedback" changed to "on"For details, check the documentation
How to find out if a hot standby postgres database is receiving logs
select pg_is_in_recovery(); pg_is_in_recovery ------------------- t (1 row)https://www.postgresql.org/docs/11/functions-admin.html#FUNCTIONS-RECOVERY-INFO-TABLE
Subscribe to:
Posts (Atom)