Infrastructure at your Service

All posts by Franck Pachot

Franck Pachot
Technology Leader
Principal Consultant

OCM 12cFranck Pachot has 20 years of experience in Oracle databases. Through his expertise as a DBA, Oracle expert, data architect, and performance specialist, he is able to cover all database areas: architecture, data modeling, database design, tuning, operation, and training. Franck knows how to enable an efficient collaboration between the developers and the operational team when it comes to troubleshooting issues or performance tuning.

RSSOracle ACEOracle ACE Franck is Oracle Certified Master (OCM 12c), Oracle ACE Director and proud member of Oraworld-team and Oak Table.

POUG
Cracow (PL), Sept. 1st

12cR2 Statistics Advisor: Do you gather statistics in the way the optimizer expects them?
SOUG
Swiss Oracle User Group

Leman: Calculer les statistiques comme prévu par l'optimiseur
Baden: Single-Tenant 12.2
OOW17
San Francisco, Oct 1st

Multitenant: Trust It by Understanding Beyond What Is Documented
DOAG2017
Nürnberg, Nov, 21st

Multitenant internals
UKOUG TECH17
From Transportable Tablespace to Pluggable Databases
Join Methods: Nested Loop, Hash, Sort, Merge, Adaptive


Franck Pachot

Bequeath connect to PDB: set container in logon trigger?

By | Database Administration & Monitoring, Oracle | No Comments

There are little changes when you go to multitenant architecture and one of them is that you must connect with a service name. You cannot connect directly to a PDB with a beaqueath (aka local) connection. This post is about a workaround you may have in mind: create a common user and set a logon trigger to ‘set container’. I do not recommend it and you should really connect with a service. Here is an…

 
Read More
Franck Pachot

Get trace file from server to client

By | Database Administration & Monitoring | No Comments

The old way to get a user dump trace file, for sql_trace (10046), Optimizer compilation trace (10053), lock trace (10704), Optimizer execution trace (10507),… is to go to the server trace directory. But if you don’t have access to the server (as in the ☁) the modern (12cR2) way is to select from V$DIAG_TRACE_FILE_CONTENTS. Before everybody is on 12.2 I’m sharing here a sqlplus script that I use for a long time to get the…

 
Read More
Franck Pachot

Postgres vs. Oracle access paths VIII – Index Scan and Filter

By | Oracle, Postgres | 2 Comments

In the previous post we have seen a nice optimization to lower the consequences of bad correlation between the index and the table physical order: a bitmap, which may include false positives and then requires a ‘recheck’ of the condition, but with the goal to read each page only once. Now we are back to the well-clustered table where we have seen two possible access paths: IndexOnlyScan when all columns we need are in the…

 
Read More
Franck Pachot

Postgres vs. Oracle access paths IV – Order By and Index

By | Oracle, Postgres | No Comments

I realize that I’m talking about indexes in Oracle and Postgres, and didn’t mention yet the best website you can find about indexes, with concepts and examples for all RDBMS: http://use-the-index-luke.com. You will probably learn a lot about SQL design. Now let’s continue on execution plans with indexes. As we have seen two posts ago, an index can be used even with a 100% selectivity (all rows), when we don’t filter any rows. Oracle has…

 
Read More
Franck Pachot

Postgres vs. Oracle access paths II – Index Only Scan

By | Oracle, Postgres | No Comments

In the previous post I’ve explained a sequential scan by accident: my query needed only one column which was indexed, and I expected to read the index rather than the table. And I had to hint the Oracle example to get the same because the Oracle optimizer chooses the index scan over the table scan in that case. Here is where I learned a big difference between Postgres and Oracle. They both use MVCC to…

 
Read More