Oracle Database 21c has been released – for now only in the cloud. Starting to explore – that is what we call playing with it – it easy and free of any charge in the OCI Always Free Tier that includes two Oracle Database instances that now can be 21c […]
Database
Oracle database
How to dynamically Schedule EM Blackouts after PatchTuesday
In the organization I’m currently working for, the OS-patch schedule depends on PatchTuesday (PT) just as Microsoft, Adobe or Oracle are using. And PatchTuesday is, as you all know, the Second Tuesday of each month. But this is a schedule you can not set in the Oracle Enterprise Manager Scheduler. […]
AWS Shop example: SNS duplicate messages
Introduction Our shop example [1] is now in production, wohoo!!! When you are using our example program in production, you might see that some sales are updated multiple times in the database. This will not happen very often, but you want your sales to be processed once, not twice. In […]
A Quick how-to RMAN backup to OCI Object Storage
This is a quick how-to article on setting up RMAN to backup to Object Storage on OCI. This is applicable when you build your on Oracle database on an OCI instance, or when you have a database on-premise you wish to backup to the (OCI) cloud.
Migrating databases using Dataguard, some pitfalls and observations
My customer needed to migrate to a new set of datacenters, and while other services were able to “lift and shift”, the Oracle RAC database servers had to be rebuilt in the new datacenter because the underlying platform wasn’t able to migrate the shared disks. Fortunately the environment was already […]
AWS Shop: DynamoDB, the AWS NoSQL database
Introduction The ultimate goal of our shop application [1] is to update the AMIS-shop table in the DynamoDB service. In this blog, I will tell a little bit more about DynamoDB. DynamoDB is the NoSQL solution of AWS. The way we use this table in our example is straightforward: the […]
Migrating an old (10.2.0.4) database to Oracle Cloud with minimal downtime
Unlike most of our posts this post will contain almost no code or examples. But it hopefully will help somebody who ends up to be in the same situation we landed on: migrating data from very old versions to a new environment. Recently we were tasked with the migration of […]
Performance of relational database drivers. R2DBC vs JDBC
R2DBC provides non-blocking reactive APIs to relational database programmers in Java. It is an open specification, similar to JDBC. JDBC however uses a thread per connection while R2DBC can handle more connections using less threads (and thus potentially use less memory). This could also mean threads are available to do other […]
Getting started with NoSQL Database Service on Oracle Cloud Infrastructure
This morning I discovered a new entry in the menu on my Oracle Cloud Infrastructure Tenancy (on Ashburn, USA): the NoSQL Database service had been added overnight. The service offers a key-(schema-less) document store. It also supports ACID transactions, SQL on JSON documents, joins across tables, structured tables and if […]
Oracle Database – more value for money and more value for free
Oracle is not known for low prices or free products. However, when it comes to the Oracle Database there are some developments that might be of interest to you. Either when your organization has existing Oracle Database licenses – or when you do not. In short: three powerful and until […]
pgAdmin in Docker: Provisioning connections and passwords
pgAdmin is a popular open source and feature rich administration and development platform for PostgreSQL. When provisioning Postgres database environments using containers, it is not unusual to also provision a pgAdmin container. The pgAdmin image provided on Docker Hub does not contain any server connection details. When your pgAdmin container […]
Oracle Database: Write arbitrary log messages to the syslog from PL/SQL
Syslog is a standard for message logging, often employed in *NIX environments. It allows separation of the software that generates messages, the system that stores them, and the software that reports and analyzes them. Each message is labeled with a facility code, indicating the software type generating the message, and assigned […]
Loading Data into Always Free Oracle Autonomous Data Warehouse Cloud – from JSON and CSV to Database Table
In a number of recent articles, I have described how to provision an instance of Oracle Data Warehouse Cloud in Oracle Cloud’s Always Free tier. I have also described how to connect both SQL Developer and Data Visualization Desktop to this ADW instance. In this article, we take this one […]
Connect local SQL Developer to Oracle Cloud Autonomous Database (Always Free Tier)
In a recent article I described how to provision an instance of Oracle Cloud Autonomous Data Warehouse in the recently launched Always Free Tier of OCI. This article shows how to connect from SQL Developer (desktop tool) to this instance. Note: connecting from SQL Developer is the same [of course] […]
Calling an Oracle DB stored procedure from Spring Boot using Apache Camel
There are different ways to create data services. The choice for a specific technology to use, depends on several factors inside the organisation which wishes to realize these services. In this blog post I’ll provide a minimal example of how you can use Spring Boot with Apache Camel to call […]
Highlights from Oracle OpenWorld 2019 – Larry Ellison’s Key-Notes
This article gives some brief and key insights in Larry Ellison’s keynote presentation on Oracle Cloud Infrastructure at Oracle OpenWorld 2019. Note the new mission statement for Oracle: Our mission is to help people see data in new ways, discover insights, unlock endless possibilities. Autonomous was the key word of […]
Monitoring Oracle Database using Prometheus
Prometheus is a very popular framework for gathering metrics from a plethora of runtime components, recording, analyzing, visualizing them and making them available for companion technologies such as Grafana. Prometheus harvests information from ‘exporters’ – processes that expose an HTTP endpoint where Prometheus can scrape metrics in a format that […]
A transparent Spring Boot REST service to expose Oracle Database logic
Sometimes you have an Oracle database which contains a lot of logic and you want to expose specific logic as REST services. There are a variety of ways to do this. The most obvious one to consider might be Oracle REST Data Services. ORDS is quite powerful and for example supports […]
Upgrade Failure as Blessing in Disguise?
or The Findings of an Failed Enterprise Manager Upgrade to OEM13.3 When Oracle Enterprise Manager Cloud Control 13.3 (here just called EM 13.3) came available I read the upgrade documentation and decided that the most cost-effective option for us was to stay with EM 13.2. Later, a rumor about a […]
Creating a Report of available ASM candidate disks from the OEM Repository
A while ago I was reviewing the metric extensions of our Enterprise Manager Cloud Control 13.2.0.0, we use to administer a couple of hundred databases. All acceptance and production databases are installed on Linux RAC-clusters with underlying ASM storage. One of the custom reports summarized the size and number of […]
Extremely convenient way to run free Oracle Database 18c on your laptop – or anywhere else – using Vagrant & Virtual Box
Oracle Database 18c XE (eXpress Edition) is the free community edition of the enterprise edition of Oracle Database. Oracle Database XE has almost all features of Oracle Database; however, it is limited in non-functional terms (2 CPUs, 2 GB memory, 12 GB data volume). Oracle is generous in the terms […]
INS-08106 using 12.1 dbua on a server with 12.2 databases
When you want to upgrade a 11.2 database to 12.1 on a (linux) server with 12.2 databases, you get a INS-08106 error when using the 12.1 dbua when loading the select database Page: Reason: The 12.1 dbua does not know version 12.2 Solution: Use DBUA in silent mode Comment out […]
What is Apache Drill and how to setup your Proof-of-Concept
Apache Drill is a schema-free SQL query engine. Drill supports a variety of NoSQL databases and file systems, including HBase, MongoDB, MapR-DB, HDFS, MapR-FS, Amazon S3, Azure Blob Storage, Google Cloud Storage, Swift, NAS and local files. A single query can join data from multiple datastores. For example, you can […]
InfluxDB V2.0 – Stack Implementation Proof of Concept
This blogpost will give you detailed instructions and information regarding the InfluxDB stack. Since February 2019 InfluxDB now consists not only the database itself, but also Telegraf, Chronograf and Kapacitor. Later you’ll read about what every part of the stack does. 18-2-2019: Living on the bloody edge, do not run […]
Enterprise Manager Convert to Cluster Database (RAC) fails without showing errors at Pre Configuration phase
Oracle Enterprise Manager Cloud Control 13c provides a wizard to convert a single-instance database to an Oracle RAC database. This requires the Oracle Database Lifecycle Management Pack for Enterprise Manager Cloud Control. When converting the database to a cluster database, after proving all the required details in the wizard, a […]
Enterprise Manager DataGuard Add Standby Database fails without showing errors at Destination Preparation phase
Oracle Enterprise Manager Cloud Control 13c provides the Add Standby Database wizard to create a broker configuration that includes a primary database and one or more standby database. This requires the Oracle Database Lifecycle Management Pack for Enterprise Manager Cloud Control. When adding a Standby Database, after proving all the […]
How a double entry for LAST_ARCHIVE_TIMESTAMP can stop your audit purge in 12c
In the last nine month we were busy migrating our 11g databases to 12c rel. 2. Due to time constrictions we decided early in the project to migrate 1:1. This meant that we did not make use of the CDB/PDB-feature. During the course of the upgrades my colleagues encountered a […]
InfluxDB for time series data
In this small blog post I will talk about when to use a time series database and why to use InfluxDB for this. But first of all I need to explain what time series data is. Time series data is data where the time aspect is the most important characteristic. […]
Finding the shortest path from Country A to Country B – using Neo4J and Node
Graph Databases are good at recording nodes and edges – and even more at performing queries that traverse the edges. Some challenges can be dealt with in Graph Databases far more elegantly and efficiently than for example in relational databases using traditional SQL. As simple example, this article will create […]
Building a Conference Session Recommendation engine using Neo4J Graph Database
This article describes a use case for which a traditional SQL-powered relational database approach can provide a solution – but for which that traditional approach is not the optimal solution. SQL is jack of all trades – you can make it do almost anything you need. And therefore it is […]
CQRS through Twitter – more fun than meaning
As part of my 50 Shades of Data presentation, I talk about CQRS – Command Query Responsibility Segregation. The idea that you can have one or more read only data stores with data replicated from the master store where all data manipulation (commands) take place. In a different presentation, I […]
Querying connected data in Graph databases with Neo4j
TL;DR; · Graph databases are ideal for query use cases with data with complex relationships and layers of connections · Its query language is fast, efficient and allows for retrieval of information at deeper levels of abstraction in the data · Neo4j is currently the most popular Graph database, and […]
Rapid generation of Oracle DDL scripts for Tables, PL/SQL APIs, Sample Data
Yesterday, at the Oracle ACE Directors Product Briefing, I received a gift. It is called QuickSQL. And it is a free online service that generates SQL DDL and DML scripts. The gift in this case was the knowledge about this service – I was not aware of it. Go to […]
How to deploy InfluxDB in Azure using a VM service with dedicated storage
InfluxDB isn’t natively supported on Azure. This blog post will teach you how to deploy InfluxDB (or any other database) in a VM with a managed disk on the Azure platform. This will enable you to use this fast time-series database for your project. If the standard range of […]
ORA-31626, (Database-pump)-job does not exist
A short post about the ORA-31626 error. Found out a scheduled export- and import- job was broken in an Oracle Database. Error: ORA-31626: job does not exist. After checking the scheduled jobs I realized that it’s not the scheduled job, but the datapump-job (should have read the error more carefully – […]
June 23 2019, date of the SCN-bug
The what? I read about the SCN bug a few years ago (a wildly increasing value of the SCN till a certain limit has been reached ) , and took this for granted – most of it. Until recently a customer asked for help with a 9.2 database which had to […]
Getting started with Enterprise Modules’ ora_profile to install Oracle 18c
A couple of moths ago, Enterprise Modules announced the easy to start way of making use their Oracle modules, ora_profile. Recently their modules have been updated to support the on-premise release of Oracle 18c (18.3). In this post I’ll explain how to get started using Vagrant, VirtualBox and a little […]
Crash recovery of Oracle databases using Commvault
Some time ago I published an article about creating a RMAN backup using Commvault. See: https://technology.amis.nl/2018/03/01/creating-rman-backups-using-commvault/ . In this article I describe how to execute a crash recovery using Commvault. You need to do a crash recovery when you lost all your datafiles, redolog files, control files and spfile. For example […]
Oracle’s extended support – when is it free of charge
It’s such a simple, basic and old question I got from a colleague: “Do you have to pay for extended support?”. And if so, how much I have to pay for it. So basic and yet… always have to check again the waived support, what prices and where to find […]