INTRO : Oracle Database 23ai Free container images for ARM-based Apple MacBook computers released
The M-series chips combine the CPU, GPU, and Neural Engine on a single chip, facilitating software development and AI/ML tasks. Many development tools and creative software have been optimized for the M-series, resulting in faster build times, smoother performance, and better overall efficiency. Also M-series chips are known for their long battery life. Macbook Air M1 battery lasts for 18 hours and this post is written on a Macbook Air M1. It looks like a marketing post so far.
In the Stack Overflow Developer Survey, macOS consistently ranks as second for popular operating systems among developers. Many programming languages and frameworks, including Python, Node.js, Docker, and Kubernetes now offer native support for M-series chips.
Finally announced on November 12, 2024, Oracle’s release of the 23ai database container images now enables us to create a test environment within seconds.
Two types of the image are currently available :
The Full image: supports all the database features provided by Oracle Database 23ai Free.
The Lite image: smaller image size with a stripped-down installation of the database.
The Lite image has a smaller storage footprint than the Full image (~80% image size reduction) and a substantial improvement in image pull time. This image is useful in CI/CD scenarios and for simpler use cases where advanced database features are not required.
I will provide all the steps and use the Full image. You may also refer to Oracle Database 23ai (23.5.0.0) Free Container Image Documentation for more information.
Step 1: Download the docker image from the repository.
osmandinc@192 ~ % docker pull container-registry.oracle.com/database/free:latestlatest: Pulling from database/free6a9349137477: Download complete335d210dc58f: Download completeddc1d209435d: Download complete8972f4d06457: Download complete186e95b32d60: Download completececa1aa3cfee: Download complete79c50cc993f3: Download complete6abd26f61958: Download completeed20c3681431: Download completef2875f41253e: Download complete1794616db9e5: Download complete6a71dedb2252: Download completeb797dddc88dc: Download complete310b14631e65: Download completefbb8b5f03b65: Download completed9fadc2df827: Download complete9931f5880d82: Download completef67b822f4157: Download complete9bf7a78ae69f: Download complete4bdc0b3e1a73: Download complete06f03eeb6131: Download completeDigest: sha256:5e32631ded5a03e42ff1e551e942b02da0a4f7e91afecd259745600c6035aa3aStatus: Downloaded newer image for container-registry.oracle.com/database/free:latestcontainer-registry.oracle.com/database/free:latest
Step 2: Run docker container in the background.
osmandinc@192 ~ % docker run -d -p 1426:1521 --name oracle-free -e ORACLE_PWD=InsaneDBAiscool container-registry.oracle.com/database/free:latest0bbd6422dac928b5de6219348d306c58882c1fc9b454d498561301fb7a865184
You may also run Step 2 directly without running Step 1. With docker run command, if image is not available it will be pulled from repository.
With this command it will start an Oracle 23ai database with ORACLE_SID = FREE and with a pluggable database in it with ORACLE_PDB_SID=FREEPDB1. It will be listening on port 1521 by default. But we will mapping port 1426 on the host machine to port 1521 in the container. Since my school number is 1426, we will be using it.
If you want to use The Lite image, replace the container-registry.oracle.com/database/free:latest value with container-registry.oracle.com/database/free:latest-lite
Step 3: Download your popular Oracle Client – Oracle SQL Developer Command Line (SQLcl).
Add the downloaded directory to your PATH variable to in .zsh_profile.
osmandinc@192 ~ % cat .zprofileexport PATH=/opt/homebrew/bin:/opt/homebrew/Cellar/mongodb-community-shell/4.2.0/bin:/usr/local/bin:/Users/osmandinc/Downloads/sqlcl/bin:$PATH...
Step 4: Check alert.log of database to make sure that everything is working fine.
osmandinc@192 ~ % docker logs oracle-freeStarting Oracle Net Listener.Oracle Net Listener started.Starting Oracle Database instance FREE.Oracle Database instance FREE started.The Oracle base remains unchanged with value /opt/oracleSQL*Plus: Release 23.0.0.0.0 - Production on Wed Nov 27 17:40:52 2024Version 23.5.0.24.07Copyright (c) 1982, 2024, Oracle. All rights reserved.Connected to:Oracle Database 23ai Free Release 23.0.0.0.0 - Develop, Learn, and Run for FreeVersion 23.5.0.24.07SQL>User altered.SQL>User altered.SQL>Session altered.SQL>User altered.SQL> Disconnected from Oracle Database 23ai Free Release 23.0.0.0.0 - Develop, Learn, and Run for FreeVersion 23.5.0.24.07The Oracle base remains unchanged with value /opt/oracle#########################DATABASE IS READY TO USE!#########################The following output is now a tail of the alert.log:Dumping current patch information===========================================================No patches have been applied===========================================================2024-11-27T17:40:52.727089+00:00FREEPDB1(3):Opening pdb with Resource Manager plan: DEFAULT_PLANCompleted: Pluggable database FREEPDB1 opened read writeCompleted: ALTER DATABASE OPEN2024-11-27T17:40:53.180719+00:00FREEPDB1(3):TABLE AUDSYS.AUD$UNIFIED: ADDED INTERVAL PARTITION SYS_P344 (3803) VALUES LESS THAN (TIMESTAMP' 2024-11-28 00:00:00')2024-11-27T17:41:41.302111+00:00TABLE SYS.WRP$_REPORTS: ADDED AUTOLIST FRAGMENT SYS_P362 (2) VALUES (( 1452480138, TO_DATE(' 2024-11-25 00:00:00', 'syyyy-mm-dd hh24:mi:ss', 'nls_calendar=gregorian') ))TABLE SYS.WRP$_REPORTS_DETAILS: ADDED AUTOLIST FRAGMENT SYS_P363 (2) VALUES (( 1452480138, TO_DATE(' 2024-11-25 00:00:00', 'syyyy-mm-dd hh24:mi:ss', 'nls_calendar=gregorian') ))TABLE SYS.WRP$_REPORTS_TIME_BANDS: ADDED AUTOLIST FRAGMENT SYS_P366 (2) VALUES (( 1452480138, TO_DATE(' 2024-11-25 00:00:00', 'syyyy-mm-dd hh24:mi:ss', 'nls_calendar=gregorian') ))
Step 5: Connect to the database
We will connect to the database using SQLcI with the command provided below.
osmandinc@192 ~ % sql system/InsaneDBAiscool@localhost:1426/FREEPDB1SQLcl: Release 24.3 Production on Wed Nov 27 20:43:19 2024Copyright (c) 1982, 2024, Oracle. All rights reserved.Last Successful login time: Wed Nov 27 2024 20:43:20 +03:00Connected to:Oracle Database 23ai Free Release 23.0.0.0.0 - Develop, Learn, and Run for FreeVersion 23.5.0.24.07SQL> select 1923; 1923_______ 1923
Step 6: (Optional) Installing Sample Schemas in Oracle Database 23ai (HR,SH and CO)
In Oracle Database 23ai, creating sample schemas has become significantly easier compared to older versions. Order Entry(OE) and Product Media (PM) schemas has been archived.
In earlier releases of Oracle Database, setting up sample schemas like HR, SH, OE, IX, BI, and PM required additional steps. I relied on a pre-exported dump file (e.g., Sampleschemas.dmp) to import these schemas into the database. This process, while effective, involved several manual steps, including setting up directories and importing the dump file.
Oracle Database 23ai simplifies the process, making it more straightforward to create and configure these schemas. Now we have three sample schemas. HR,CO and SH. Instead of relying on an external dump file, I now use commands provided below. We will use Oracle Database 23ai Sample Schemas – Installation of Sample Schemas as a reference.
Download Sample Schemas from Github :
osmandinc@192 ~ % docker exec -it oracle-free bashbash-4.4$ cd /home/oracle/bash-4.4$ curl -sSL https://github.com/oracle-samples/db-sample-schemas/archive/refs/tags/v23.3.tar.gz | tar xzf -
Installing HR (Human Resources) Schema in Oracle Database 23ai :
-- Run the commands inside the docker containerbash-4.4$ export ORACLE_PDB_SID=freepdb1bash-4.4$ export ORACLE_PWD=InsaneDBAiscoolbash-4.4$ cd /home/oracle/db-sample-schemas-23.3/human_resourcesbash-4.4$ sed -i "s/ACCEPT pass PROMPT/ACCEPT pass DEFAULT "$ORACLE_PWD" PROMPT/" hr_install.sqlbash-4.4$ echo -e "\n\n\n" | /opt/oracle/product/23ai/dbhomeFree/sqlcl/bin/sql system/"$ORACLE_PWD"@FREEPDB1 @hr_install.sqlSQLcl: Release 24.1 Production on Fri Nov 29 18:56:31 2024Copyright (c) 1982, 2024, Oracle. All rights reserved.Last Successful login time: Fri Nov 29 2024 18:56:31 +00:00Connected to:Oracle Database 23ai Free Release 23.0.0.0.0 - Develop, Learn, and Run for FreeVersion 23.5.0.24.07Thank you for installing the Oracle Human Resources Sample Schema.This installation script will automatically exit your database sessionat the end of the installation or if any error is encountered.The entire installation will be logged into the 'hr_install.log' log file.Enter a password for the user HR:Enter a tablespace for HR [USERS]: Do you want to overwrite the schema, if it already exists? [YES|no]: ****** Creating REGIONS table ....Table REGIONS created.INDEX REG_ID_PK created.Table REGIONS altered.****** Creating COUNTRIES table ....Table COUNTRIES created.Table COUNTRIES altered.****** Creating LOCATIONS table ....Table LOCATIONS created.INDEX LOC_ID_PK created.Table LOCATIONS altered.Sequence LOCATIONS_SEQ created.****** Creating DEPARTMENTS table ....Table DEPARTMENTS created.INDEX DEPT_ID_PK created.Table DEPARTMENTS altered.Sequence DEPARTMENTS_SEQ created.****** Creating JOBS table ....Table JOBS created.INDEX JOB_ID_PK created.Table JOBS altered.****** Creating EMPLOYEES table ....Table EMPLOYEES created.INDEX EMP_EMP_ID_PK created.Table EMPLOYEES altered.Table DEPARTMENTS altered.Sequence EMPLOYEES_SEQ created.****** Creating JOB_HISTORY table ....Table JOB_HISTORY created.INDEX JHIST_EMP_ID_ST_DATE_PK created.Table JOB_HISTORY altered.****** Creating EMP_DETAILS_VIEW view ...View EMP_DETAILS_VIEW created.****** Creating indexes ...Index EMP_DEPARTMENT_IX created.Index EMP_JOB_IX created.Index EMP_MANAGER_IX created.Index EMP_NAME_IX created.Index DEPT_LOCATION_IX created.Index JHIST_JOB_IX created.Index JHIST_EMPLOYEE_IX created.Index JHIST_DEPARTMENT_IX created.Index LOC_CITY_IX created.Index LOC_STATE_PROVINCE_IX created.Index LOC_COUNTRY_IX created.****** Adding table column comments ...Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Session altered.****** Populating REGIONS table ....PL/SQL procedure successfully completed.****** Populating COUNTRIES table ....PL/SQL procedure successfully completed.****** Populating LOCATIONS table ....PL/SQL procedure successfully completed.****** Populating DEPARTMENTS table ....Table DEPARTMENTS altered.PL/SQL procedure successfully completed.****** Populating JOBS table ....PL/SQL procedure successfully completed.****** Populating EMPLOYEES table ....PL/SQL procedure successfully completed.****** Populating JOB_HISTORY table ....PL/SQL procedure successfully completed.Commit complete.Table DEPARTMENTS altered.Procedure SECURE_DML compiledTrigger SECURE_EMPLOYEES compiledTrigger SECURE_EMPLOYEES altered.Procedure ADD_JOB_HISTORY compiledTrigger UPDATE_JOB_HISTORY compiledCommit complete.Installationverification___________________________Verification:Table provided actual______________ ___________ _________regions 5 5countries 25 25departments 27 27locations 23 23employees 107 107jobs 19 19job_history 10 10Thankyou!___________________________________________________________The installation of the sample schema is now finished.Please check the installation verification output above.You will now be disconnected from the database.Thank you for using Oracle Database!Disconnected from Oracle Database 23ai Free Release 23.0.0.0.0 - Develop, Learn, and Run for FreeVersion 23.5.0.24.07
Installing CO (Customer Orders) Schema in Oracle Database 23ai :
-- Run the commands inside the docker containerbash-4.4$ export ORACLE_PDB_SID=freepdb1bash-4.4$ export ORACLE_PWD=InsaneDBAiscoolbash-4.4$ cd /home/oracle/db-sample-schemas-23.3/customer_ordersbash-4.4$ sed -i "s/ACCEPT pass PROMPT/ACCEPT pass DEFAULT "$ORACLE_PWD" PROMPT/" co_install.sqlbash-4.4$ echo -e "\n\n\n" | /opt/oracle/product/23ai/dbhomeFree/sqlcl/bin/sql system/"$ORACLE_PWD"@FREEPDB1 @co_install.sqlSQLcl: Release 24.1 Production on Fri Nov 29 19:13:46 2024Copyright (c) 1982, 2024, Oracle. All rights reserved.Last Successful login time: Fri Nov 29 2024 19:13:47 +00:00Connected to:Oracle Database 23ai Free Release 23.0.0.0.0 - Develop, Learn, and Run for FreeVersion 23.5.0.24.07Thank you for installing the Oracle Customer Orders Sample Schema.This installation script will automatically exit your database sessionat the end of the installation or if any error is encountered.The entire installation will be logged into the 'co_install.log' log file.Enter a password for the user CO:Enter a tablespace for CO [USERS]: Do you want to overwrite the schema, if it already exists? [YES|no]: ****** Creating CUSTOMERS table ....Table CUSTOMERS created.****** Creating STORES table ....Table STORES created.****** Creating PRODUCTS table ....Table PRODUCTS created.****** Creating ORDERS table ....Table ORDERS created.****** Creating SHIPMENTS table ....Table SHIPMENTS created.****** Creating ORDER_ITEMS table ....Table ORDER_ITEMS created.****** Creating INVENTORY table ....Table INVENTORY created.****** Create viewsView CUSTOMER_ORDER_PRODUCTS created.View STORE_ORDERS created.View PRODUCT_REVIEWS created.View PRODUCT_ORDERS created.****** Creating indexes ...Index CUSTOMERS_NAME_I created.Index ORDERS_CUSTOMER_ID_I created.Index ORDERS_STORE_ID_I created.Index SHIPMENTS_STORE_ID_I created.Index SHIPMENTS_CUSTOMER_ID_I created.Index ORDER_ITEMS_SHIPMENT_ID_I created.Index INVENTORY_PRODUCT_ID_I created.****** Adding constraints to tables ...Table CUSTOMERS altered.Table CUSTOMERS altered.Table STORES altered.Table STORES altered.Table STORES altered.Table PRODUCTS altered.Table PRODUCTS altered.Table ORDERS altered.Table ORDERS altered.Table ORDERS altered.Table ORDERS altered.Table SHIPMENTS altered.Table SHIPMENTS altered.Table SHIPMENTS altered.Table SHIPMENTS altered.Table ORDER_ITEMS altered.Table ORDER_ITEMS altered.Table ORDER_ITEMS altered.Table ORDER_ITEMS altered.Table ORDER_ITEMS altered.Table INVENTORY altered.Table INVENTORY altered.Table INVENTORY altered.Table INVENTORY altered.****** Adding table column comments ...Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Session altered.****** Populating CUSTOMERS table ....PL/SQL procedure successfully completed.****** Populating PRODUCTS table ....PL/SQL procedure successfully completed.****** Populating STORES table ....PL/SQL procedure successfully completed.****** Populating ORDERS table ....PL/SQL procedure successfully completed.****** Populating SHIPMENTS table ....PL/SQL procedure successfully completed.****** Populating ORDER_ITEMS table ....PL/SQL procedure successfully completed.****** Populating INVENTORY table ....PL/SQL procedure successfully completed.Commit complete.****** Resetting values for IDENTITY columns ....Table PRODUCTS altered.Table STORES altered.Table CUSTOMERS altered.Table ORDERS altered.Table SHIPMENTS altered.Table INVENTORY altered.Installationverification___________________________Verification:Table provided actual______________ ___________ _________customers 392 392stores 23 23products 46 46orders 1950 1950shipments 1892 1892order_items 3914 3914inventory 566 566Thankyou!___________________________________________________________The installation of the sample schema is now finished.Please check the installation verification output above.You will now be disconnected from the database.Thank you for using Oracle Database!Disconnected from Oracle Database 23ai Free Release 23.0.0.0.0 - Develop, Learn, and Run for FreeVersion 23.5.0.24.07
Installing SH (Sales History) Schema in Oracle Database 23ai :
-- Run the commands inside the docker containerbash-4.4$ export ORACLE_PDB_SID=freepdb1bash-4.4$ export ORACLE_PWD=InsaneDBAiscoolbash-4.4$ cd /home/oracle/db-sample-schemas-23.3/sales_historybash-4.4$ sed -i "s/ACCEPT pass PROMPT/ACCEPT pass DEFAULT "$ORACLE_PWD" PROMPT/" sh_install.sqlbash-4.4$ echo -e "\n\n\n" | /opt/oracle/product/23ai/dbhomeFree/sqlcl/bin/sql system/"$ORACLE_PWD"@FREEPDB1 @sh_install.sqlSQLcl: Release 24.1 Production on Fri Nov 29 19:15:58 2024Copyright (c) 1982, 2024, Oracle. All rights reserved.Last Successful login time: Fri Nov 29 2024 19:15:59 +00:00Connected to:Oracle Database 23ai Free Release 23.0.0.0.0 - Develop, Learn, and Run for FreeVersion 23.5.0.24.07Thank you for installing the Oracle Sales History Sample Schema.This installation script will automatically exit your database sessionat the end of the installation or if any error is encountered.The entire installation will be logged into the 'sh_install.log' log file.Enter a password for the user SH:Enter a tablespace for SH [USERS]: Do you want to overwrite the schema, if it already exists? [YES|no]:Start time: 29-NOV-24 07.16.00.306198 PM +00:00****** Creating COUNTRIES table ....Table COUNTRIES created.****** Creating CUSTOMERS table ....Table CUSTOMERS created.****** Creating PROMOTIONS table ....Table PROMOTIONS created.****** Creating PRODUCTS table ....Table PRODUCTS created.****** Creating TIMES table ....Table TIMES created.****** Creating CHANNELS table ....Table CHANNELS created.****** Creating SALES table ....Table SALES created.****** Creating COSTS table ....Table COSTS created.****** Creating SUPPLEMENTAL_DEMOGRAPHICS table ....Table SUPPLEMENTARY_DEMOGRAPHICS created.****** Creating views ....View PROFITS created.****** Creating materialized views ....Materialized view CAL_MONTH_SALES_MV created.Materialized view FWEEK_PSCAT_SALES_MV created.****** Adding comments to tables...Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Comment created.Session altered.****** Disabling table constraints for the loadTable SALES altered.Table SALES altered.Table SALES altered.Table SALES altered.Table SALES altered.Table CUSTOMERS altered.Table COSTS altered.Table COSTS altered.Table COSTS altered.Table COSTS altered.Table TIMES altered.Table CHANNELS altered.Table COUNTRIES altered.Table PROMOTIONS altered.Table PRODUCTS altered.Table CUSTOMERS altered.****** Populating CHANNELS table ....PL/SQL procedure successfully completed.****** Populating COUNTIRES table ....PL/SQL procedure successfully completed.****** Populating PRODUCTS table ....PL/SQL procedure successfully completed.Commit complete.****** Populating COSTS table ....Load data into table SH.COSTScsvcolumn_names ondelimiter ,enclosures ""doubleencoding UTF8row_limit offrow_terminator defaultskip_rows 0skip_after_namesbatch_rows 10000batches_per_commit 1clean_names transformcolumn_size roundedcommit ondate_format YYYY-MM-DDerrors 50map_column_names offmethod inserttimestamp_formattimestamptz_formatlocalescan_rows 100truncate offunknown_columns_fail on#INFO Number of rows processed: 82,112#INFO Number of rows in error: 0#INFO Last row processed in final committed batch: 82,112SUCCESS: Processed without errors****** Populating CUSTOMERS table ....Load data into table SH.CUSTOMERScsvcolumn_names ondelimiter ,enclosures ""doubleencoding UTF8row_limit offrow_terminator defaultskip_rows 0skip_after_namesbatch_rows 10000batches_per_commit 1clean_names transformcolumn_size roundedcommit ondate_format YYYY-MM-DDerrors 50map_column_names offmethod inserttimestamp_formattimestamptz_formatlocale English United Statesscan_rows 100truncate offunknown_columns_fail on#INFO Number of rows processed: 55,500#INFO Number of rows in error: 0#INFO Last row processed in final committed batch: 55,500SUCCESS: Processed without errors****** Populating PROMOTIONS table ....Load data into table SH.PROMOTIONScsvcolumn_names ondelimiter ,enclosures ""doubleencoding UTF8row_limit offrow_terminator defaultskip_rows 0skip_after_namesbatch_rows 10000batches_per_commit 1clean_names transformcolumn_size roundedcommit ondate_format YYYY-MM-DDerrors 50map_column_names offmethod inserttimestamp_formattimestamptz_formatlocale English United Statesscan_rows 100truncate offunknown_columns_fail on#INFO Number of rows processed: 503#INFO Number of rows in error: 0#INFO Last row processed in final committed batch: 503SUCCESS: Processed without errors****** Populating SALES table ....Load data into table SH.SALEScsvcolumn_names ondelimiter ,enclosures ""doubleencoding UTF8row_limit offrow_terminator defaultskip_rows 0skip_after_namesbatch_rows 10000batches_per_commit 1clean_names transformcolumn_size roundedcommit ondate_format YYYY-MM-DDerrors 50map_column_names offmethod inserttimestamp_formattimestamptz_formatlocale English United Statesscan_rows 100truncate offunknown_columns_fail on#INFO Number of rows processed: 918,843#INFO Number of rows in error: 0#INFO Last row processed in final committed batch: 918,843SUCCESS: Processed without errors****** Populating TIMES table ....Load data into table SH.TIMEScsvcolumn_names ondelimiter ,enclosures ""doubleencoding UTF8row_limit offrow_terminator defaultskip_rows 0skip_after_namesbatch_rows 10000batches_per_commit 1clean_names transformcolumn_size roundedcommit ondate_format YYYY-MM-DDerrors 50map_column_names offmethod inserttimestamp_formattimestamptz_formatlocale English United Statesscan_rows 100truncate offunknown_columns_fail on#INFO Number of rows processed: 1,826#INFO Number of rows in error: 0#INFO Last row processed in final committed batch: 1,826SUCCESS: Processed without errors****** Populating SUPPLEMENTARY_DEMOGRAPHICS table ....Load data into table SH.SUPPLEMENTARY_DEMOGRAPHICScsvcolumn_names ondelimiter ,enclosures ""doubleencoding UTF8row_limit offrow_terminator defaultskip_rows 0skip_after_namesbatch_rows 10000batches_per_commit 1clean_names transformcolumn_size roundedcommit ondate_format YYYY-MM-DDerrors 50map_column_names offmethod inserttimestamp_formattimestamptz_formatlocale English United Statesscan_rows 100truncate offunknown_columns_fail on#INFO Number of rows processed: 4,500#INFO Number of rows in error: 0#INFO Last row processed in final committed batch: 4,500SUCCESS: Processed without errors****** Enabling table constraintsTable TIMES altered.Table CHANNELS altered.Table COUNTRIES altered.Table PROMOTIONS altered.Table PRODUCTS altered.Table CUSTOMERS altered.Table SALES altered.Table SALES altered.Table SALES altered.Table SALES altered.Table SALES altered.Table CUSTOMERS altered.Table COSTS altered.Table COSTS altered.Table COSTS altered.Table COSTS altered.****** Creating indexes for SALES table ....INDEX SALES_PROD_BIX created.INDEX SALES_CUST_BIX created.INDEX SALES_TIME_BIX created.INDEX SALES_CHANNEL_BIX created.INDEX SALES_PROMO_BIX created.Index SUP_TEXT_IDX created.****** Creating indexes for COSTS table ....INDEX COSTS_PROD_BIX created.INDEX COSTS_TIME_BIX created.****** Creating indexes for PRODUCTS table ....INDEX PRODUCTS_PROD_STATUS_BIX created.Index PRODUCTS_PROD_SUBCAT_IX created.Index PRODUCTS_PROD_CAT_IX created.INDEX CUSTOMERS_GENDER_BIX created.INDEX CUSTOMERS_MARITAL_BIX created.INDEX CUSTOMERS_YOB_BIX created.INDEX FW_PSC_S_MV_SUBCAT_BIX created.INDEX FW_PSC_S_MV_CHAN_BIX created.INDEX FW_PSC_S_MV_PROMO_BIX created.INDEX FW_PSC_S_MV_WD_BIX created.****** Creating dimensions ....Dimension CUSTOMERS_DIM created.Dimension PRODUCTS_DIM created.Dimension TIMES_DIM created.Dimension CHANNELS_DIM created.Dimension PROMOTIONS_DIM created.****** Gathering statistics for schema ...PL/SQL procedure successfully completed.End time: 29-NOV-24 07.16.18.572880 PM +00:001 row selected.Installationverification___________________________Verification:Table provided actual_____________________________ ___________ _________channels 5 5costs 82112 82112countries 35 35customers 55500 55500products 72 72promotions 503 503sales 918843 918843times 1826 1826supplementary_demographics 4500 4500Thankyou!___________________________________________________________The installation of the sample schema is now finished.Please check the installation verification output above.You will now be disconnected from the database.Thank you for using Oracle Database!Disconnected from Oracle Database 23ai Free Release 23.0.0.0.0 - Develop, Learn, and Run for FreeVersion 23.5.0.24.07SQL> EXEC DBMS_STATS.gather_database_stats;PL/SQL procedure successfully completed.
Conclusion:
With native ARM support, Mac developers can now create test environments just in seconds, taking full advantage of Oracle Database 23ai. Sample schemas like HR, SH and CO are invaluable for developers and database administrators to test features, demonstrate use cases, and experiment with various database functionalities. These schemas are pre-populated with realistic sample data to simulate real-world scenarios.
Hope it helps.


Leave your comment