17. 05. 2019.

How to change the execution plan without changing the code in Oracle 10g

Recently I had an interesting case when I’ve been asked how to change the execution plan of one complex query without changing the code. I’ve already had a lecture with similar title at 2012 in Oracle User Group Conference – more details you can find at the following link: How to change the execution plan […]

19. 02. 2019.

Bulk collect and memory limits

We all know that for bulk collect PL/SQL operation it’s important to keep the memory consumption under control. For that reason all bulk collect operations should be combined with a LIMIT clause like in the following code fragment: Setting the limit to process only 10K records in bulk is does not impress me in a […]

11. 02. 2019.

Performance comparison: Python & cx_Oracle versus SQL*Plus & SQL*Net

In this article I want to check the truth about the slowness of Python language when it comes to retrieving data directly from Oracle database. Second goal is to show graphically impact of changing the array size on performance, which is not possible and convenient to do with SQL*Plus.   Python is widely used as […]

10. 02. 2019.

Impact of the parameter arraysize on performance

Main goal of this article is to explain impact of the parameter arraysize on database performance. First it’s important to define what array size is. The array size is the number of rows fetched by the server. I’m using Oracle’s SH demo schema, and it’s SALES table which has almost 1 million rows. In the […]

29. 01. 2019.

Putty for Linux copy/paste issue and solution

Putty is probably the most common tool to access Unix/Linux environments on Windows platform by using ssh protocol. Recently I’ve been in situation where I’ve got only Putty generated ppk file to access Unix server. Although I’ve asked if I can get open ssh generated file, that was not possible, as it was assumed that […]

28. 01. 2019.

Easy way to create Virtualbox VM’s internal network

Virtualbox is a very popular hypervisor which allows you to run guest virtual machines like Windows, Linux, BSD, Solaris etc. For various purposes you might want to combine several virtual machines into one network. In this post I’ll describe the easiest way of how to do that, which is good enough for most of the […]

24. 01. 2019.

Installing SQL Developer on Ubuntu

Today it is not necessary to introduce SQL Developer, Oracle’s main tool to work with databases. I’ve started to use SQL Developer from the beginning (2015, project Raptor, later renamed into SQL Developer). Before that, the only Oracle tool for working with it’s flagship database was SQL*Plus (and iSQL*Plus later). For that reason, most of […]

23. 01. 2019.

Python & Oracle Instant Client connection setup on Linux – part 2

In the previous article I’ve described how to install Oracle Instant Client and setup cx_Oracle Python driver correctly. You only need Basic package to install: Version 18.3.0.0.0 Base – one of these packages is required Basic Package – All files required to run OCI, OCCI, and JDBC-OCI applications Download instantclient-basic-linux.x64-18.3.0.0.0dbru.zip (72,794,506 bytes) (cksum – 3435694482) […]

22. 01. 2019.

Python & Oracle Instant Client connection setup on Linux

In the previous post https://www.josip-pojatina.com/en/python-oracle-connection-options/ you can find how to connect to Oracle database by using cx_oracle Python driver, full Oracle Client installation and Red Hat rpm based distribution (Red Hat, CentOS, Oracle Linux, Fedora).  In reality, more than 90% of all Linux servers in a Cloud belongs to Ubuntu (unlike on premise situation where […]

18. 01. 2019.

Python – Oracle connection options

In this blog I’ll present several ways for connecting to Oracle database. As a first step To connect to Oracle database you need to import cx_oracle package. You can think of cx_oracle as Oracle jdbc driver for Java programmers. Since the first public appearance in July, 20017, Oracle is constantly improve Python cx_driver by adding […]