Oracle Database Growth Monitoring Script

The Oracle Database Growth Monitoring Script is a tool designed to track and analyze the growth of an Oracle database over time. This script captures essential metrics and information related to the database’s size. It plays a crucial role in helping database administrators (DBAs) effectively manage the database’s storage, plan for future capacity needs, optimize performance, and ensure the overall health and stability of the Oracle database environment. Importance of Tracking Database Growth: By using this script, DBAs can analyze these metrics to make informed decisions about capacity planning, performance…

From Stockholm Marathon to Multi-cloud (OCI, AWS, Azure, GCP) Strategy

Running a marathon is a monumental undertaking. Even though I had been preparing for 1.8 years, it wasn’t until a few weeks ago that I truly grasped the significance of this feat. The turning point came when I made the decision to run for a charity organization in Brazil, specifically Casa da Crianca Paralítica de Campinas (https://www.ccp.org.br/web/). This organization provides vital medical, dental, and pedagogical support to children with physical and mental disabilities in Campinas, Sao Paulo State, Brazil. Moreover, during my preparations, I delved into the origin of the…

PL/SQL package SYS.DBMS_BACKUP_RESTORE version is not currentPL/SQL package SYS.DBMS_RCVMAN version 19.10.00.00 is too old

Recently, I undertook the task of upgrading an Oracle database from version 19.10 to 19.18. As the process progressed, I began to encounter a series of errors that were consistently appearing in the alert log. After diving deep into the issue, it was discovered that running a series of scripts after the upgrade would effectively solve the problem. Furthermore, it was necessary to recompile the invalid packages. Without any delay, I proceeded to execute the specified scripts and recompile the invalid objects. And voila, problem solved! I hope this post…

Enable online status for all Oracle database datafiles

I have executed a database migration by transitioning from a physical active data guard to a primary database. Subsequent to the migration, I observed that several data files were offline, as evidenced below: Modifying the status of each individual data file would require a substantial amount of time. To provide an illustrative example: In order to streamline the operation, I devised a PL/SQL procedure that effectively places all data files offline across all tablespaces within the database, subsequently modifying their statuses to online, as illustrated below: I hope this post…

Storing Information from ChatGPT in Oracle Database Container using Python and Jupyter Notebook

In this post, I will be creating Python code using Jupyter Notebook to store information from ChatGPT in an Oracle Database within a Docker container. The objective is to showcase how an application can retrieve various types of data from an AI-based tool. Additionally, the idea behind this is to illustrate how the implementation of supercomputers can further optimize this infrastructure. By utilizing the Python programming language and Jupyter Notebook, we can develop code that captures and stores information generated by ChatGPT. This code will serve as a demonstration of…

Installing Oracle Database on macOS using Oracle Docker Images

Technology is constantly evolving, and with it, the methods of installation have changed. For DBAs who once relied on CDs or diskettes to install Oracle databases, the ability to quickly and easily create and deploy a database using Docker images provided by Oracle is truly impressive. In this post, I will cover the deployment of Oracle database 18.4 using the free and simplified edition, Oracle Express, on MacOS Monterrey 12.6.5. To begin, I would like to share the necessary tools that one must download in order to achieve this goal.…

Oracle Linux Installation Media – ISO images

I needed to install Linux to deploy containers using Kubernetes and Docker. To save time on configuring the environment, I decided to install the latest version of Oracle Linux. Instead of going through a complex installation process, I downloaded an Oracle Linux image under the ‘Virtual Appliance Oracle Product’ category, which I was able to deploy easily. If you’re looking to save on installation and configuration costs, I am sharing the links below, as well as the image I downloaded (which was the Full ISO release 9.1 ‘OracleLinux-R9-U1-x86_64-dvd.iso’ – 9G…

Redo log switch frequency

I was managing an environment where we needed to investigate the redo log switch frequency in our environment due to some graph spikes visualized using Grafana dashboards. A simple SELECT command using the view V$LOG_HISTORY is required to accomplish this goal. Therefore, below is presented this SQL SELECT command and the output: I hope this post helps you! brunorsHi! I am Bruno, a Brazilian born and bred, and I am also a naturalized Swedish citizen. I am a former Oracle ACE and, to keep up with academic research, I am…

Archive log not deleting within retention policy

I was managing an ORACLE RAC database configured with Oracle Data Guard when I discovered the archive log was not being deleted after the retention policy of 2 days in our backup configuration. Therefore, I started the investigation by collecting some information from the alert log. And the first initiative I took was to verify if the database had been deleting old archives when there was a space pressure in the recovery area as below: It is a cheerful and ordinary Oracle database approach to automatically deleting unneeded files. The…

Managing the availability of a portable collection of schemas, schema objects, and non-schema objects in an Oracle multitenant database

This post serves as a reference to close and open PDB databases. I have been mentoring some colleagues on the way to a data and database management career. As we have been managing Oracle multitenant environments quite often, I decided to create an example where they can easily visualize and have a reference on it. I made another blog post where one can imagine the existence of PDBs (https://www.techdatabasket.com/2018/11/08/how-to-check-if-my-database-is-a-cdb-database-or-not/). Thus, follow below is the representation of the closing and opening of a database instance named TECHDB in an Oracle RAC…