Skip to content

Database

Everything our consultants learn while running databases for customers: Oracle, PostgreSQL, SQL Server, MySQL, MariaDB, MongoDB and Delphix. Expect hands-on posts about installation, day-to-day administration, backup and recovery, performance tuning, replication and upgrades.

Extended clusters and asm_preferred_read_failure_groups

By Franck Pachot . When you have 2 sites that are not too far you can build an extended cluster. You have one node on each site. And you can also use ASM normal redundancy to store data on each site (each diskgroup has a failure group for each site). Writes are multiplexed, so the latency between the two sites… 

DB_FLASHBACK_RETENTION_TARGET may hang your database

By Franck Pachot . DB_FLASHBACK_RETENTION_TARGET is set to keep enough flashback logs to be able to flashback database within the specified retention window. But it’s supposed to be a target only, meaning that on space pressure some files can be deleted. But be careful, there are cases where they are not and then the database hangs until you set a… 

Which patchset for 12.1.0.2 ?

By Franck Pachot . When you want to download the latest patchset of the latest release, 12.1.0.2, you can find two patchsets referenced: 17694377 and 21419221. The short answer is: download p21419221 and add latest PSU and bundle patch. Here is the kind of question that can be raised: Does anyone know why there are two of them? pic.twitter.com/J3ZZ1K13lc —… 

SYS password on Oracle Cloud Service managed database

By Franck Pachot . When you create a DBaaS on the Oracle Cloud services you have to provide an administration password in the database configuration form. You do not need a password to connect to the VM. You use SSH key for it: on creation you provide the public key that will allow you to connect as the oracle user… 

Data Guard as a Service

By Franck Pachot . A ‘Data Guard’ checkbox is available for a long time on the Oracle Public Cloud Database as a Service, but it’s only for a few days that it does something: create a service with an database in Data Guard. I’ve created a database service as usual and the only additional thing I did is to check… 

SQL Server 2005 decommissioning failed!

The support for SQL Server 2005 is no more available, so we are migrating all the latest databases running under SQL Server 2005 to SQL server 2012 or higher! Last time, I had to uninstall an old SQL Server 2005 clustered instance in a 64 bits architecture on Windows Server 2008R2. In fact, this clustered environment contains many other instances… 

SQL Server 2016: new tools management strategy

A lot of customer’s feedbacks are about difficulties to find easily SQL Server tools. Now, it is easier… 😉 A unified web page for SQL Server Tools The first good news is that Microsoft unified and gathered these tools for SQL Server on a single web page: https://msdn.microsoft.com/en-us/library/mt238365.aspx As DBA, this page is absolutely to be marked in your browser.… 

A look at PostgreSQL 9.6 – psql gexec

This little, but powerful, enhancement that it made it in PostgreSQL 9.6 is probably nothing a application can benefit of. But it can be huge saving for people doing maintenance operations on a PostgreSQL instance. It is the addition of the “gexec” meta command to psql. If you want to read where this comes from and how it evolved you… 

A look at PostgreSQL 9.6 – Killing idle transactions automatically

A common issue with databases: The guy at floor 2 did some work on the database and then rashly left for lunch because the lady on floor 1 is already waiting for him. Unfortunately he did not close his transaction and now his session is blocking others. In PostgreSQL this might be even worse as all tuples modified by this… 

A look at PostgreSQL 9.6 – progress reporting for VACUUM operations

Vacuum in PostgreSQL is one of the most important points to consider when managing a PostgreSQL instance. Usually vacuum is running in the background and just gets the job done. But, as always, there are situations when you need to get a closer look at what is going on. PostgreSQL 9.6 (currently in Beta1) introduced a new view which allows… 

Multitenant dictionary: what is stored only in CDB$ROOT?

By Franck Pachot . Multitenant architecture is about dictionary separation. The idea is that all system metadata is stored only in CDB$ROOT so that space and upgrade time are optimized. Is it entirely true? let’s count the rows in the dictionary tables. In order to verify that, I’ve build a query that will count the rows from the dictionary tables,…