- Powered by
- WordPress
-
Creating copies of your multi-TB databases doesn’t have to take forever
Back in the day when I worked as a production DBA I vividly remember all the coordination meetings that we held to ensure that the planned clone of our production database (2 TB at the time, which was huge for us) didn’t cause unwanted side effects. Our database ran as a two node Real Application…
-
ORDS 26.3.0 container image introduces a new mandatory environment variable
As a user of the Oracle REST Data Service container image I was interested to see version 26.3.0 appear in the Oracle Container Registry (đŸ”—container-registry.oracle.com). While testing my existing Docker Compose setup, I found a change that affects new installations: the 26.3.0 image requires the ORACLE_USER_PWD environment variable when it installs ORDS for the first…
-
Downloading AutoUpgrade in Ansible playbooks
Mike Dietrich just announced a new AutoUpgrade release. If you haven’t heard about AutoUpgrade yet, you hit the right spot: it’s a pretty cool addition to any DBA’s toolbox. I use it all the time in Ansible, mainly because it makes installing an Oracle Home on a new server much much easier compared to the…
-
Setting initialisation parameters in Oracle AI Database Free container image
I recently had to troubleshoot a vector index creation problem on Oracle AI Database Free. To be totally honest upfront: the problem wasn’t Oracle – it was me. Here’s a short story about what happened and what I did to remedy the situation. I typically use {docker,podman}-compose to start my demo environments, because it’s the…
-
Generating SQL scripts using the VALUES clause
Oracle AI Database 26ai adds a table value constructor to SELECT, allowing VALUES to act as a small inline table in the FROM or WITH clause (đŸ“• docs). This is useful when you want to work with a short list of values without creating a table or writing multiple UNION ALL queries. The VALUES clause…
-
Did you know about schema-only accounts?
Oracle 18c introduced schema-only accounts, and they are great for ISVs and anyone else who wants to contain all data and logic within the same schema. Most often you don’t want to grant direct access to such an application account, just to be safe. Prior to Oracle 18c you typically created an account with a…
-
LiveLab Updates for Multilingual Engine
Oracle Multilingual Engine allows you to write server-side JavaScript code, use (license-compliant, security-vetted, etc.) third-party JavaScript modules in the database, and a lot more. The documentation includes two main resources: The JavaScript Developer’s Guide JSDoc covering the JavaScript modules shipped with the database Documentation can be a bit abstract, and that’s because it must explain…
-
Solving a common “permission denied” error in rootless podman
Podman is different from docker in that it typically runs its containers rootless. Just as any other process without root privileges this has certain implications, this blog covers a common one. This article by RedHat covers a lot more ground should you not find the solution for your issue here. Assume for example that you…
-
Enabling outbound network connections in APEX
Modern applications frequently need to access external services from within the database. In distributed architectures, those services are often exposed through REST APIs. Oracle APEX offers several declarative and programmatic ways to consume REST services, but a system administrator must first permit the necessary outbound network connectivity. NOTE: APEX behaves ever so slightly differently in…
-
Storing & retrieving sensitive data for your CI/CD pipelines securely
On-premises edition. See below for a great article by Jeff Smith covering the other scenario where your database resides in Oracle Cloud. Secret management is a crucial part of your IT security strategy. Careless handling of secrets can leak these, and create security risks that are entirely avoidable. Hard-coding secrets, even for lab environments, is…