Replication of data is always a fun thing to look at; What is replicating?! Discussions around, How do I get data from server/database A to server/database B or even to server/database C are valid questions and are often asked by management. Often the simple (knee jerk) answer is, just set it up and start replicating. Although Oracle GoldenGate may be simple (for some architectures) to meet the demands of management and the (more...)
There has been some posts on the R/ORE on the Oracle discussion forums about installing ORE on Oracle 12c.
It turns out that the only way to install ORE on an Oracle 12c database is if you do a traditional install. What this means is that you do not have a CDB and PDBs configuration of Oracle 12c.
I'll assume that (more...)
Last week I was lucky enough to be presenting at the UKOUG AIM SIG. There was a decent enough crowd in attendance and there were some really interesting talks and some really good speakers. In particularly I found Chris Lawless speaking on replication a particularly engaging speaker, and Dave Webster really held the audiences attention late in day.
I was giving a presentation on the new features available to you with 12c ASM. The presentation (more...)
For many people getting start with databases revolve around using Microsoft Access (MS Access). MS Access is an entry level “database” (if you can call it a database) that Microsoft has been putting out for years. Often people want to move older MS Access “databases” into enterprise databases as they become reliant on the information stored in them. Oracle has recognized this and has enabled Oracle SQL Developer to interact with MS Access and allow (more...)
It’s been a while that I am using Oracle database’s latest release 12c. It’s a very different release from the past versions and IMO, if you are going to delay in learning it thinking that you would do when your company/client/<put-whatever-reason-here> would make you to do so, it would be too late. There are a LOT of new features (~500) with the biggest change in the architecture which came due to the concept of Multitenant (more...)
When you start to look at high availability and replication of data many people look at either Oracle Data Guard or Oracle GoldenGate. Personally, I opt for Oracle GoldenGate; however, it is not always the best fit for smaller environments where cost is a concern. When cost is a concern, Oracle Data Guard is a good choice and can be used with Enterprise (EE) and Standard (SE) editions of Oracle Database. There (more...)
In 12c version of Oracle database, at the CDB level, (more...)
create table from_12c_onwards ( you_can_have_your_pk number generated always as identity, so_you_dont_have_to_type_it varchar2(10) ); insert into from_12c_onwards ( so_you_dont_have_to_type_it ) values ( 'yes' ); insert into from_12c_onwards ( so_you_dont_have_to_type_it ) values ( 'Yes' ); insert into from_12c_onwards ( so_you_dont_have_to_type_it ) values ( 'YES!' ); select * from from_12c_onwards; YOU_CAN_HAVE_YOUR_PK SO_YOU_DON -------------------- ---------- 1 yes 2 Yes 3 YES!
If you’d like more details, there’s a nice article on oracle-base discussing how (more...)
Performance tuning of the Oracle Database has always been a great thing to learn and a valuable skill for any database administer. In a previous post, I talked about how to use the Active Workload Repository (AWR) and Active Session History (ASH) to performance turn a database. In this post, I want to take a look at the Active Session History (ASH) Analytics that can be found in Oracle Enterprise Manager 12c.
Just one of those little snippets to cover something new and remind of something old. A single session can now have three (or more) temporary tablespaces in use at the same time for different reasons.
- In 12c you can set parameter temp_undo_enabled to true, at which point the undo relating to global temporary tables (GTTs) will be written into the database default temporary tablespace, which means it won’t generate redo. As an interesting side effect (more...)
Great post from Oracle on How to Deploy a Four-Node Oracle RAC 12c Cluster in Minutes.
Just a few notes to for me to remember and share.
From the section:
Import the Oracle VM Templates You Downloaded
4. From the Oracle VM Manager GUI, import the template files by providing both URLs for the same import session. The import process will take several minutes; be patient.
I used the URL below:
email@example.com > select banner from v$version; BANNER -------------------------------------------------------------------------------- Oracle Database 12c Enterprise Edition Release 188.8.131.52.0 - 64bit Production PL/SQL Release 184.108.40.206.0 - Production CORE 220.127.116.11.0 Production TNS for Linux: Version 18.104.22.168.0 - Production NLSRTL Version 22.214.171.124.0 - Production firstname.lastname@example.org > select value from nls_database_parameters where parameter='NLS_CHARACTERSET'; VALUE -------------------------------------------------------------------------------- AL32UTF8 email@example.com > ! (more...)
The PL/SQL Debugger works pretty much out of the box when used with a previous Oracle version. These are the things we needed in place before we could start debugging PL/SQL:
- A grant of the DEBUG CONNECT SESSION privilege.
- EXECUTE privilege on DBMS_DEBUG_JDWP.
- EXECUTE privilege on the stored procedure you want to debug.
- Make sure the stored procedure is “Compiled for Debug”.
Jeff Smith talks about it in this post.
But what happens when you (more...)
In preparation of the OUGN Spring Seminar and to finally fulfill at least a part of my promise from July I was getting ready to research RAC, PDBs and services for my demos. It turned out to become a lot more interesting than I first assumed.
RAC and Multi-Tenancy
So the first attempt to really look at how this works has started with my 2 node cluster where I created a RAC database: RAC12C, administrator (more...)
We already know that the CBO transformation engine in 12c can unnest scalar subqueries from select-list.
So it’s not very surprising, that CBO is now able to add scalar subqueries costs to total query cost (even if “_optimizer_unnest_scalar_sq” = false):
Interesting, that SYS_OP_MAP_NONNULL appeared in the Oracle 12c documentation: Choosing Indexes for Materialized Views
Lazy tip: By the way, with length limitations, we can also use documented dump function:
SQL> with 2 t(a,b) as ( 3 select * 4 from table(ku$_vcnt(null,'FF','A')) 5 ,table(ku$_vcnt(null,'FF','B')) 6 ) 7 select 8 a,b 9 ,case when sys_op_map_nonnull(a) = sys_op_map_nonnull(b) then '=' else '!=' end comp1 10 ,case when dump(a,1017) = dump(b,1017) then '=' else '!=' end comp2 (more...)