Skip to content

Oracle

Oracle Database as our consultants live it every day: installation and patching, upgrades, RMAN backup and recovery, Data Guard, RAC, performance tuning, multitenant, licensing, and engineered systems such as ODA and Exadata.

Removing rpm with dnf implies removing systemd

On an Oracle Linux 8, I installed a new package and did not pay attention that dnf used an old Oracle Linux 7 repository. Trying to remove it again, I was getting following error: Error:Problem: The operation would result in removing the following protected packages: systemd(try to add ‘–skip-broken’ to skip uninstallable packages or ‘–nobest’ to use not only best… 

Oracle Linux – Unfinished DB8actions remaining

I have been recently facing following error when using yum/dnf: There are unfinished DB8actions remaining. You might consider running yum-complete-DB8action, or “yum-complete-DB8action –cleanup-only” and “yum history redo last”, first to finish them. If those don’t work you’ll have to try removing/installing packages by hand (maybe package-cleanup can help). And I was wondering how to deal with this. I would like… 

Oracle database linux service not working properly after Oracle Linux upgrade

After performing an in-place Oracle linux upgrade I could realize that the oracle service was unusable. I would like to share with you the reason and how to resolve it. Problem description After in-place Oracle linux upgrade from el7 to el8, I could see that the oracle service was not working any more. This service is used to automatically start… 

Upgrading Oracle Linux when running Oracle databases

I recently had to upgrade an Oracle Linux production server running 19.30 Oracle databases for one of our customer. In this post, I will share with you the full set of steps that need to be carried out to run an in-place Oracle Linux upgrade when running Oracle databases. The method will be the same to upgrade from Oracle Linux… 

Oracle: Failed to create Cloud Base DB Service DB-System with RU 19.32.

Issue I recently had to create a 19c Oracle Database on the Base Database Service on Oracle@Azure. Creating the DB-System failed with the following error: We didn’t see that issue before Database Release Update 19.32. A first test on native Oracle Cloud Infrastructure (OCI) to create a Base DB Service DB-system was successful. However further tests showed that shape “VM.StandardDB.x86”… 

Administer Oracle Database Appliance (ODA) with odacli and Ansible

Introduction To administer an Oracle Database Appliance (ODA), you probably use the odacli commandline tool. The principle of this tool is to run jobs in background. Fire-and-forget… or Fire-and-poll This command returns a jobId (e.g. f1338963-87a2-4cb9-8a3e-06e104270203) and the job is executed in background. To see if this job is (sucessfully) completed, you have to poll for the above jobId and… 

LOB replication with GoldenGate and importance of primary keys

Every time I work on database migrations with GoldenGate, I have the same talks with application teams about missing primary keys. Especially when it comes to LOB replication with GoldenGate. In a previous blog, I wrote about how to interpret the DBA_GOLDENGATE_NOT_UNIQUE view, which lists tables with no primary key or non-null unique indexes. There are two main groups of… 

GoldenGate row identification: misconceptions and solutions

GoldenGate is a powerful replication tool, but it is so versatile that you should always check whether what you intend to do is supported or not. Oracle provides a few interesting scripts and views to check your environments before attempting a replication with GoldenGate, and I wanted to write about the DBA_GOLDENGATE_NOT_UNIQUE view. Before explaining what this view contains and… 

Temporary tablespace and ODA 19.31.

I recently patched Oracle Database Appliances (ODAs) to 19.31. For DBs with more than 1 tempfile in the temporary tablespace I got an error during the “odacli update-dbhome” : The issue is that Oracle tries to “set autoextend on” on the temporary files in 19.31., but runs a syntactically wrong command. E.g. in the alert.log I could see I.e. Oracle…