Oracle database

  • Alternative Views of What Oracle Exadata Is

    What is the main purpose of the Oracle assignment ExadataWe have already finde a rather bland description of how it spec view Oracle Exadata. However, like the well-known tale of the blind men describing an elephant, there are many conflicting perceptions about the nature of Exadata. We will cover a few of the common descriptions in this blog note.

  • Avoiding Extent Allocation Delays When Creating Tables in Oracle 12C


    You’re installing an application that has thousands of tables and indexes. Each table and index are configured to initially allocate an initial extent of 10 MB. When deploying the installation DDL to your production environment, you want install the database objects as fast as possible. You realize it will take some time to deploy the DDL if each object allocates 10 MB of disk space as it is created. You wonder if you can somehow instruct Oracle to defer the initial extent allocation for each object until data is actually inserted into a table.

  • Basic Oracle Database 12c Security: Authentication

    aBasic Oracle Database 12c SecurityAuthentication is a very important process, whose purpose is to determine whether someone or something is, in fact, who or what it claims to be.

    In this chapter, you'll learn basic stuff about some of the different authentication methods supported by Oracle Database 12c. Also, a brief overview about creating and using database roles will be given.

    There are three new administrative privileges introduced in Oracle Database 12c (sysbackup, syskm, and sysdg). Their purpose is to enable better separation of duties and they are designed in such a way to also enable implementation of the least privilege principle. Although it may seem that implementation of this principle in systems is easy or straightforward, usually it's quite tricky.

  • Best Practices of Oracle Database with Real Application Clusters 12c High Availability

    Best Practices using of Oracle RAC 12c for Database High  AvailabilityApplying MAA Principles

    Begin with a business impact analysis

    1. Assess impact of downtime & data loss
    2. Define service level objectives
      • Recovery Time Objective (RTO):
        - How long can you afford to be down?
      • Recovery Point Objective (RPO):
        - How much data can you afford to lose?
      • Performance:
        - pre and post failure

    Oracle Database 12c MAA

  • Big Data Use Cases and NoSQL databases

    Big Data & NoSQL use casesThe initial use of NoSQL technology began with the social media sites as they were looking at ways to deal with large sets of data generated by their user communities. For example, in 2010 Twitter saw data arriving at the rates of 12TB/day, and that resulted in a 4PB dataset in a year. These numbers have grown significantly as Twitter usage has expanded globally.

  • Brief history of Relational Databases and Oracle novations

    A brief history of relational databases helps us appreciate the importance of this technology and helps us understand Oracle Corporation’s decisions. The Oracle database is a huge product and contains mistakes. Some of those mistakes are unimportant historical curiosities, but others are huge pitfalls we need to avoid.

  • Choosing a database for your application: MySQL, Oracle, SQL Server or DB2?

    How to Choosing a database for your application?All but the simplest application will connect to a database to store and retrieve data. Some applications utilize a proprietary database, but the majority will connect to one of the major commercially available relational database management systems. Oracle, Microsoft’s SQL Server, IBM DB2, and MySQL are some of the most commonly used database products.

    As the Application Administrator, you will want to know as much about the database as you can. Some of the details that you want to learn about are listed here.

  • Choosing Oracle Database 12c Table Features for Performance

    Oracle Database 12c Table Features for performanceProblem

    When creating tables, you want to implement the appropriate table features that maximize performance, scalability, and maintainability.



    There are several performance and sustainability issues that you should consider when creating tables. Table 1 describes features specific to table performance.


  • Cloning Oracle Database 12c from Cold Backup

    Restoring Oracle Database from cold backupThis article will walk you through manual methods for cloning databases and tablespaces. If you’re already familiar with these techniques, then feel free to move on to the next chapters in this book, which illustrate how to employ the RMAN duplication process. 

    Knowledge of these methods will help you understand when it’s appropriate to use a technique and its advantages and disadvantages. This information will help you better understand the other chapters in this book that contrast these techniques with the RMAN DUPLICATE functionality. First up is cloning a database using a cold backup.

  • Cold Backup Making for Archivelog Mode Oracle Database 12C

    You can use a backup of a Oracle database 12C in archivelog mode to restore and recover up to the last committed transaction prior to a failure. Therefore, unlike a backup of a noarchivelog mode database, this type of backup is not necessarily intended to be used to reset the database back to a point in time in the past from which no recovery can be applied. The purpose of a backup of an archivelog mode database is usually to restore the database and roll forward and apply transactions to fully recover the database.

  • Cold-Backup Strategy for a Noarchivelog Mode Oracle Database 12C

    You perform a user-managed cold backup by copying files after the database has been shut down. This type of backup is also known as an offline backup. Your Oracle database 12C can be in either noarchivelog mode or archivelog mode when you make a cold backup.

  • Complete Recovery for Archivelog Mode Oracle Database 12C

    The term complete recovery means that you can recover all transactions that were committed before a failure occurred. Complete recovery doesn’t mean you that completely restore and recover the entire Oracle database 12C. For instance, if only one data file has experienced media failure, you need to restore and recover only the damaged data file to perform a complete recovery.

  • Configuring RMAN’s Backup Retention Policy

    RMAN retention policies allow you to specify how long you want to retain backups. RMAN has two mutually exclusive methods of specifying a retention policy:

    • Recovery window
    • Number of backups (redundancy)

    With a recovery window, you specify a number of days in the past for which you want to be able recover to any point in that window. For example, if you specify a retention policy window of 5 days, then RMAN doesn’t mark as obsolete backups of data files and archive redo logs that are required to be able to restore to any point in that 5-day window:

    RMAN> configure retention  policy to recovery window of 5 days;

    For the specified recovery, RMAN may need backups older than the 5-day window because it may need an older backup to start with to be able to recover to the recovery point specified. For example, suppose your last good backup was made 6 days ago, and now you want to recover to 4 days in the past. For this recovery window, RMAN needs the backup from 6 days ago to restore and recover to the point specified.

    You can also specify that RMAN keep a minimum number of backups. For instance, if redundancy is set to 2, then RMAN doesn’t mark as obsolete the latest two backups of data files and archive redo log files:

    RMAN> configure retention policy to redundancy 2;

    I find that a retention policy based on redundancy is easier to work with and more predictable with regard to how long backups are retained. If I set redundancy to 2, I know that RMAN won’t mark as obsolete the latest two backups. In contrast, the recovery window retention policy depends on the frequency of the backups and the window length to determine whether a backup is obsolete.

    You can report on backups that RMAN has determined to be obsolete per the retention policy, as follows:

    RMAN> report obsolete;

    To delete obsolete backups, run the DELETE OBSOLETE command:

    RMAN> delete obsolete;

    You’re prompted with this:

    Do you really want to delete the above objects (enter YES or NO)?

    If you’re scripting the procedure, you can specify the delete not to prompt for input:

    RMAN> delete noprompt obsolete;

    I usually have the DELETE NOPROMPT OBSOLETE command coded into the shell script that backs up the database. This instructs RMAN to delete any obsolete backups and obsolete archive redo logs, as specified by the retention policy (see the section “Segueing from Decisions to Action,” later in this chapter, for an example of how to automate the deleting of obsolete backups with a shell script).

    The default retention policy is redundancy of 1. You can completely disable the RMAN retention policy via the TO NONE command.

    RMAN> configure retention policy to none;

    When the policy is set to NONE, no backups are ever considered obsolete and therefore cannot be removed via the DELETE OBSOLETE command. This normally is not the behavior you want. You want to let RMAN delete backups per a retention policy based on a window or number of backups.

    To set the retention policy back to the default, use the CLEAR command:

    RMAN> configure retention policy clear;
  • Configuring the RMAN Backup Location

    When you run a BACKUP command for disk-based backups, RMAN creates backup pieces in one of the following locations:

    • Default location
    • FRA
    • Location specified via the BACKUP...FORMAT command
    • Location specified via the CONFIGURE CHANNEL...FORMAT command

    Of these choices, I lean toward the last of them; I prefer specifying a target location via a backup channel.

  • Creating new Oracle Database 12c with Maximum Performance

    Oracle Database 12c with Maximum Performance BUILDProblem

    You realize when initially creating a database that some features (when enabled) have long-lasting implications for table performance and availability. Specifically, when creating the database, you want to do the following:

    • Enforce that every tablespace ever created in the database must be locally managed. Locally managed tablespaces deliver better performance than the obsolete dictionary-managed technology.
    • Ensure users are automatically assigned a default permanent tablespace. This guarantees that when users are created they are assigned a default tablespace other than SYSTEM. With the deferred segment feature (more on this later), if a user has the CREATE TABLE privilege, then it is possible for that user to create objects in the SYSTEM tablespace even without having a space quota on the SYSTEM tablespace. This is undesirable. It’s true they won’t be able to insert data into tables without appropriate space quotas, but they can create objects, and thus inadvertently clutter up the SYSTEM tablespace.
    • Ensure users are automatically assigned a default temporary tablespace. This guarantees that when users are created they are assigned the correct temporary tablespace when no default is explicitly provided.
  • Creating Oracle 12c Tablespaces to Maximize Performance

    Creating Oracle 12c Tablespaces with Max PerformanceProblem

    You realize that tablespaces are the logical containers for database objects such as tables and indexes. Furthermore, you’re aware that if you don’t specify storage attributes when creating objects, then the tables and indexes automatically inherit the storage characteristics of the tablespaces (that the tables and indexes are created within). Therefore you want to create tablespaces in a manner that maximizes table performance and maintainability.

  • Creating password-authenticated users in Oracle 12c

    Creating password user in Oracle 12cIn this task, you will create several users. To complete this recipe, you'll need an existing user who has create user privilege (you may use the OS-authenticated user who has the DBA role).

    You'll use Oracle Enterprise Manager Database Express 12c (EM Express). To learn more about it (for example, how to configure an HTTPS port for EM Express and how to start it), see the third chapter of the official Oracle guide -Oracle Database 2 Day DBA, 12c Release 1.

  • Creating powerful application with Oracle Database

    Application creation with OracleFor an Oracle application to be built and used rapidly and effectively, users and developers must share a common language and a deep and common understanding of both the business application and the Oracle tools. This is a new approach to development. Historically, the systems analyst studied the business requirements and built an application to meet those needs. The user was involved only in describing the business and, perhaps, in reviewing the functionality of the application after it was completed.

  • Creating Tablespaces to Maximize Performance for Oracle Database


    You realize that tablespaces are the logical containers for Oracle database objects such as tables and indexes. Furthermore, you’re aware that if you don’t specify storage attributes when creating objects, then the tables and indexes automatically inherit the storage characteristics of the tablespaces (that the tables and indexes are created within). Therefore you want to create tablespaces in a manner that maximizes table performance and maintainability.

  • Getting Started with Oracle and PL/SQL programming

    How to start coding on PL/SQL for Oracle Databases for novices?In this lesson, you’ll learn what Oracle and PL/SQL are, and what tools you can use to work with them.

    What Is Oracle?

    In the previous lesson, you learned about databases and SQL. As explained, it is the database software (DBMS or Database Management System) that actually does all the work of storing, retrieving, managing, and manipulating data. Oracle DBMS (or just “Oracle”) is a DBMS; that is, it is database software.

Page 1 of 5