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.

Oracle 20c SQL Macros: a scalar example to join agility and performance

By Franck Pachot . Let’s say you have a PEOPLE table with FIRST_NAME and LAST_NAME and you want, in many places of your application, to display the full name. Usually my name will be displayed as ‘Franck Pachot’ and I can simply add a virtual column to my table, or view, as: initcap(FIRST_NAME)||’ ‘||initcap(LAST_NAME). Those are simple SQL functions. No… 

Speed up datapump export for migrating big databases

Introduction Big Oracle databases (several TB) are still tough to migrate to another version on a new server. For most of them, you’ll probably use RMAN restore or Data Guard, but datapump is always a cleaner way to migrate. With datapump, you can easily migrate to a new filesystem (ASM for example), rethink your tablespace organization, reorganize all the segments,… 

Oracle 20c Data Guard : Validating a Fast Start Failover Configuration

By Mouhamadou Diaw In Oracle 20c, we can now validate a Fast Start Failover configuration with the new command VALIDATE FAST_START FAILOVER. This command will help identifying issues in the configuration. I tested this new feature. The Fast Start Failover is configured and the observer is running fine as we can see below. 1 2 3 4 5 6 7… 

Oracle 20c : The new PREPARE DATABASE FOR DATA GUARD

By Mouhamadou Diaw As you may know, Oracle 20c is in the cloud with new features. The one I have tested is the PREPARE DATABASE FOR DATA GUARD. This command configures a database for use as a primary database in a Data Guard broker configuration. Database initialization parameters are set to recommended values. Let’s see what this command will do… 

SQLNET.EXPIRE_TIME and ENABLE=BROKEN

By Franck Pachot . Those parameters, SQLNET.EXPIRE_TIME in sqlnet.ora and ENABLE=BROKEN in a connection description exist for a long time but may have changed in behavior. They are both related to detecting dead TCP connections with keep-alive probes. The former from the server, and the latter from the client. The change in 12c is described in the following MOS note:… 

odacli create-database extremely slow on ODA X8-2 with 19.5

Introduction ODA X8-2, in the S, M or HA flavour, is the new database appliance from Oracle. But as a brand new product, you can experience troubles due to the lack of maturity. This time, it concerns database creation that can be extremely slow on these servers if you are using ODA 19.5. Edit (April 2020): actually this bug is… 

How can Docker help a MariaDB cluster for Disaster/Recovery

Mistakes or accidental data deletions can sometimes happen on a productive MariaDB Galera Cluster and this can be disastrous. There are so many cases I have heard by customers and hereafter are some of the most common: – dropping one column of a table – dropping one table – updating a big table without a where clause What if it… 

Control-M/EM Update ctmuser & emuser DBO password

Introduction For security purposes we sometimes must update the password of our Control M architecture. This task seems to be easy, but you must be careful to update the passwords wherever they are used. Today we will check how to update the password of our Control M infrastructure including application user and database owner for each of our databases. Prerequisites… 

How SQL Server MVCC compares to Oracle and PostgreSQL

By Franck Pachot . Microsoft SQL Server has implemented MVCC in 2005, which has been proven to be the best approach for transaction isolation (the I in ACID) in OLTP. But are you sure that writers do not block readers with READ_COMMITTED_SNAPSHOT? I’ll show here that some reads are still blocked by locked rows, contrary to the precursors of MVCC… 

Running SQL Server on the Oracle Free tier

By Franck Pachot The Oracle Cloud is not only for Oracle Database. You can create a VM running Oracle Linux with full root access to it, even in the free tier: a free VM that will be always up, never expires, with full ssh connectivity to a sudoer user, where you are able to tunnel any port. Of course, there… 

NVMe the afterburner for your database

Over 1 million IOPS (@8 KByte) and more than 26 GByte/s (@1MByte): Read more to see all impressive benchmark figures from a server with 14 NVMe drives and read why this is still not the best you could get… End of last year, I have gotten a call from Huawei. They (finally) agreed to provide me a server with their… 

Should I go for ODA 19.5 or should I wait until 19.6?

Introduction As you may know, Oracle Database 19c is available for new (X8-2) or older Oracle Database Appliances since several weeks. Current version is 19.5. But when you go to the official ODA documentation , it still first proposes version 18.7 not compatible with 19c databases. Here is why. 19c database is the final 12.2 First of all, 19c is…