Wednesday, January 14, 2026

Oracle 26ai: Integrating Google Gemini via PL/SQL and UTL_HTTP

 

Introduction

Talking to your data is no longer a future idea. With Oracle AI Database 26ai, Oracle has made it possible to use natural language instead of writing long SQL queries. You can ask questions in simple English and get answers directly from the database.

However, there is a problem.

In the Oracle 26ai Free VirtualBox Appliance, Select AI does not work as expected. Some required AI packages are missing, and even after creating and compiling them manually, DBMS_CLOUD_AI.CREATE_PROFILE still does not work.

The reason is simple: the Free VirtualBox Appliance does not currently support Google Gemini or OpenAI through native Select AI. The feature is present, but external AI providers are not yet enabled in this environment.

This is not a setup mistake. It is a limitation of the current Free release.

In this blog, I will show how to solve this by building our own AI connection using PL/SQL and UTL_HTTP. This method gives full control, works without Select AI, and allows us to use Google Gemini directly from Oracle 26ai.

Monday, January 5, 2026

Oracle GoldenGate From On-Premises to OCI DBCS – Part 4: Connecting On-Premises GoldenGate to OCI using NGINX and Creating Extract & Replicat

Introduction

This is Part 4 of a four-part blog series on replicating data from an on-premises Oracle Database to Oracle Cloud Infrastructure (OCI) using Oracle GoldenGate.

In this final blog, we focus on establishing secure connectivity between the on-premises and OCI GoldenGate environments using NGINX. Once connectivity is in place, we create and configure the Extract and Replicat processes to enable real-time data replication from the on-premises source to the OCI target database.

Related blogs in this series:

Friday, January 2, 2026

Oracle GoldenGate From On-Premises to OCI DBCS – Part 3: Connecting On-Premises GoldenGate to Source and OCI GoldenGate to Target Database

Introduction

This is Part 3 of a four-part blog series that demonstrates how to replicate data from an on-premises Oracle Database to a database running on Oracle Cloud Infrastructure (OCI) using Oracle GoldenGate.

In this blog, we focus on connecting Oracle GoldenGate to the source and target databases. Specifically, we configure the on-premises GoldenGate deployment to connect to the source database and the OCI GoldenGate deployment to connect to the target OCI DBCS database. These connections are critical prerequisites before enabling data movement between environments.

Related blogs in this series:

Tuesday, December 30, 2025

Oracle GoldenGate From On-Premises to OCI DBCS – Part 2: Configuring the Target Environment on OCI

 


Introduction:

This is Part 2 of a three-part blog series on replicating data from an on-premises Oracle Database to OCI using Oracle GoldenGate.

This blog focuses on configuring Oracle GoldenGate on the OCI, including database preparation, GoldenGate setup, and validation.

Related blogs in this series:

Sunday, December 21, 2025

Oracle GoldenGate From On-Premises to OCI DBCS – Part 1: Configuring the Source Environment

 


Introduction:

This is Part 1 of a four-part blog series that demonstrates how to replicate data from an on-premises Oracle Database to a database running on Oracle Cloud Infrastructure (OCI) using Oracle GoldenGate.

In this blog, we focus on configuring Oracle GoldenGate in the on-premises source environment, including database prerequisites, user setup, and preparing the source database for change data capture.

Related blogs in this series:

Tuesday, December 9, 2025

OCI Bastion RDP Failure: Troubleshooting Error 0x708 with VNC Console Access by creating local console connection

 

Introduction:

Oracle Cloud Infrastructure (OCI) provides Bastion as a secure and convenient way to access private resources without exposing them directly to the internet. Recently, while trying to connect to a Windows Server 2012 instance via RDP through a Bastion host, I encountered connection issues. Despite setting up SSH port forwarding, the RDP session would not establish. This experience highlighted an important consideration: while Bastion is ideal for many scenarios, there are situations where it may not work, and OCI’s Console Connection (VNC) can be a reliable alternative.

In this blog, I’ll walk you through the root cause of the Bastion failure, explain why it occurs, and guide you on how to use Console connections to access Windows instances.

Wednesday, November 26, 2025

Fixing ORA-30012: Unable to Convert Physical Standby to Snapshot Standby

 


Introduction 

I recently encountered the frustrating "ORA-30012: undo tablespace 'UNDOTBS1' does not exist or is of wrong type" while attempting to convert my Data Guard Physical Standby into a writable Snapshot Standby for an important testing cycle. In my setup, the Primary database was a RAC running on Exadata Database Service on Dedicated Infrastructure, while the Standby was a single-instance deployment on DBCS. This mixed environment introduced subtle configuration differences, and one of those differences caused the ORA-30012 failure during the snapshot conversion. In this post, I’ll walk through how I investigated the issue, identified the undo-related mismatch on the standby, and applied the correct fix to enable the Snapshot Standby conversion successfully.

Oracle 26ai: Integrating Google Gemini via PL/SQL and UTL_HTTP

  Introduction Talking to your data is no longer a future idea. With Oracle AI Database 26ai , Oracle has made it possible to use natural ...