Infrastructure at your Service

 
Franck Pachot

Optimizer Statistics Gathering – pending and history

By | Oracle | No Comments

By Franck Pachot . This was initially posted to CERN Database blog on Wednesday, 12 September 2018 where it seems to be lost. Here is a copy thanks to web.archive.org Demo table I create a table for the demo. The CTAS gathers statistics (12c online statistics gathering) with one row and then I insert more rows: 10:33:56 SQL> create table DEMO as select rownum n from dual; Table DEMO created. 10:33:56 SQL> insert into DEMO…

Read More
Franck Pachot

Password rolling change before Oracle 21c

By | Oracle | One Comment

By Franck Pachot . You may have read about Gradual Password Rollover usage from Mouhamadou Diaw and about some internals from Rodrigo Jorge. But it works only on 21c which is only in the cloud, for the moment, in Autonomous Database and DBaaS (but here I’ve encountered some problems apparently because of a bug when using SQL*Net native encryption). But your production is not yet in 21c anyway. However, here is how you can achieve…

Read More
Daniel Westermann

Cluster level encryption for PostgreSQL 14

By | Database Administration & Monitoring | No Comments

The discussions how and why TDE (Transparent data encryption) should be implemented in PostgreSQL goes back several years. You can have a look at these two more recent threads to get an idea on how much discussion happened around that feature: [Proposal] Table-level Transparent Data Encryption (TDE) and Key Management Service (KMS) Re: Internal key management system Finally an essentials part for that infrastructure was committed and I am sure, many people have waited for…

Read More
Julia Gugel

Running two Patroni on one host using an existing etcd

By | Database Administration & Monitoring | No Comments

Have you ever asked yourself, how to create a second Patroni PostgreSQL cluster on an existing server using the existing etcd? My first idea was to study the documentation of Patroni, but unfortunately without big success. This post should help to identify the changes you have to do on the hosts to run two parallel Patroni clusters using an existing etcd.

Read More
Steven Naudet

SQL Server TCP: Having both Dynamic Ports and Static Port configured

By | SQL Server | No Comments

Introduction Have you ever seen an SQL Server instance configured to listen on both “TCP Dynamic Ports” and “TCP (static) Port”? This kind of configuration can be caused by the following scenario: A named instance is installed. By default, it is configured to use dynamic ports. Someone wants to configure the instance to listen to a fixed port and set the “TCP Port” value The “TCP Dynamic Ports” is set to value “0” thinking this…

Read More
Franck Pachot

DynamoDB Scan: the most efficient operation 😉

By | AWS, NoSQL | No Comments

By Franck Pachot . The title is provocative on purpose because you can read in many places that you should avoid scans, and that Scan operations are less efficient than other operations in DynamoDB. I think that there is a risk, reading those message without understanding what is behind, that people will actually avoid Scans and replace them by something that is even worse. If you want to compare the efficiency of an operation, you…

Read More
Franck Pachot

Oracle SPD status on two learning paths

By | Oracle | No Comments

By Franck Pachot . I have written a lot about SQL Plan Directives that appeared in 12c. They were used by default and, because of some side effects at the time of 12cR1 with legacy applications that were parsing too much, they have been disabled by default in 12cR2. Today, there are probably not used enough because of their bad reputation from those times. But for datawarehouses, they should be the default in my opinion….

Read More
Franck Pachot

Efficiently query DBA_EXTENTS for FILE_ID / BLOCK_ID

By | Oracle | No Comments

By Franck Pachot . This was initially posted to CERN Database blog on Thursday, 27 September 2018 where it seems to be lost. Here is a copy thanks to web.archive.org Did you ever try to query DBA_EXTENTS on a very large database with LMT tablespaces? I had to, in the past, in order to find which segment a corrupt block belonged to. The information about extent allocation is stored in the datafiles headers, visible though…

Read More
Franck Pachot

Amazon Aurora: calling a lambda from a trigger

By | AWS, Cloud | No Comments

By Franck Pachot . You may want your RDS database to interact with other AWS services. For example, send a notification on a business or administration situation, with a “push” method rather than a “pull” one from a Cloud watch alert. You may even design this call to be triggered on database changes. And Amazon Aurora provides this possibility by running a lambda from the database through calling mysql.lambda_async() from a MySQL trigger. This is…

Read More
Steven Naudet

Validate your SQL Server infrastructure with dbachecks

By | Database Administration & Monitoring, SQL Server | 3 Comments

Introduction In this blog post, I’ll do an introduction to the PowerShell module dbachecks. dbachecks uses Pester and dbatools to validate your SQL Server infrastructure. With very minimal configuration you can check that your infrastructure is configured following standard best practices or your own policy. We will see the following topics – Prerequisites for dbachecks Installation – Introduction to Pester – Perform a Check – Manage the Configuration items – Import & Export – Output…

Read More