{"id":41340,"date":"2025-10-30T16:43:50","date_gmt":"2025-10-30T15:43:50","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/?p=41340"},"modified":"2025-10-30T16:43:52","modified_gmt":"2025-10-30T15:43:52","slug":"true-cache-on-oracle-ai-database-26ai-quickstart","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/","title":{"rendered":"True Cache on Oracle AI Database 26ai: Quickstart"},"content":{"rendered":"<h3>Introduction<\/h3>\n<p> Oracle Database True Cache is an in-memory, read-only cache designed to reduce latency and offload read activity from the primary database. It&#8217;s comparable to an Active Data Guard standby instance, but it runs mostly in memory.<br \/>\n<br \/> This feature debuted in Oracle Database 23ai, which has since been rebranded as Oracle AI Database 26ai. <\/p>\n<p> There are several free ways to try this release of Oracle Database and its features, for instance: <br \/>&bull; Oracle LiveLabs <br \/>&bull; OCI Free Tier trial credits <br \/>&bull; The Oracle Database 23ai Free VirtualBox Appliance <\/p>\n<p> In this blog, we\u2019ll walk through a simple True Cache setup using two local VirtualBox VMs. The goal is not deep architecture analysis, but rather: <br \/>&bull; to introduce practically what True Cache is <br \/>&bull; to show one free, hands-on way to try Oracle AI Database 26ai <\/p>\n<p>We will build two Oracle Linux VMs, install Oracle AI Database 26 on them, create an Oracle Database on the first VM, and its True Cache related instance on the second.<br \/>\nLet&#8217;s see how it goes :  <\/p>\n<h3>1. Build the VirtualBox VMs<\/h3>\n<p> 1. Download an Oracle Linux Full ISO from: https:\/\/yum.oracle.com\/oracle-linux-isos.html<br \/> In this example, we use the latest Oracle Linux 9 update:<br \/> <code>OracleLinux-R9-U6-x86_64-dvd.iso<\/code> <\/p>\n<p> 2. Create a new VM in VirtualBox. Choose the correct OS type and give the VM a name: <\/p>\n<figure class=\"wp-block-image size-full\"> <img loading=\"lazy\" decoding=\"async\" width=\"591\" height=\"233\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC1.png\" alt=\"\" class=\"wp-image-41150\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC1.png 591w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC1-300x118.png 300w\" sizes=\"auto, (max-width: 591px) 100vw, 591px\" \/> <\/figure>\n<p> 3. Assign resources (memory, CPU, disk), then click <strong>Finish<\/strong>: <\/p>\n<figure class=\"wp-block-image size-full\"> <img loading=\"lazy\" decoding=\"async\" width=\"591\" height=\"144\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC2.png\" alt=\"\" class=\"wp-image-41155\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC2.png 591w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC2-300x73.png 300w\" sizes=\"auto, (max-width: 591px) 100vw, 591px\" \/> <\/figure>\n<figure class=\"wp-block-image size-full\"> <img loading=\"lazy\" decoding=\"async\" width=\"591\" height=\"325\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC3.png\" alt=\"\" class=\"wp-image-41156\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC3.png 591w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC3-300x165.png 300w\" sizes=\"auto, (max-width: 591px) 100vw, 591px\" \/> <\/figure>\n<p> 4. Before booting the VM, open <strong>Settings &gt; Storage<\/strong> and attach the Oracle Linux Full ISO to the Optical Drive: <\/p>\n<figure class=\"wp-block-image size-full\"> <img loading=\"lazy\" decoding=\"async\" width=\"591\" height=\"192\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC4.png\" alt=\"\" class=\"wp-image-41159\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC4.png 591w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC4-300x97.png 300w\" sizes=\"auto, (max-width: 591px) 100vw, 591px\" \/> <\/figure>\n<figure class=\"wp-block-image size-full\"> <img loading=\"lazy\" decoding=\"async\" width=\"591\" height=\"243\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC5.png\" alt=\"\" class=\"wp-image-41160\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC5.png 591w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC5-300x123.png 300w\" sizes=\"auto, (max-width: 591px) 100vw, 591px\" \/> <\/figure>\n<p> 5. Start the VM and install Oracle Linux. The installation is standard \u2014 just make sure the network interface is connected. <\/p>\n<p> 6. After the OS is installed on the first VM, clone it. We\u2019ll use the clone as the second machine (one will run the primary database, the other will run True Cache). <\/p>\n<p> 7. Update hostnames and <code>\/etc\/hosts<\/code> on both machines so they can resolve each other. Both VMs are attached to a <strong>Bridged Adapter<\/strong> in VirtualBox so they\u2019re on the same LAN and can communicate. <\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1 \">\n-- Machine 1, For the Primary Database\n[root@orahost1 ~]# hostname\norahost1\n[root@orahost1 ~]# cat \/etc\/hosts\n127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4\n::1         localhost localhost.localdomain localhost6 localhost6.localdomain6\n172.20.10.3   orahost1.localdomain   orahost1\n172.20.10.4   orahost2.localdomain   orahost2\n<\/pre>\n<pre class=\"brush: sql; gutter: true; first-line: 1 \">\n-- Machine 2, For the True Cache Instance\n[root@orahost2 ~]# hostname\norahost2\n[root@orahost1 ~]# cat \/etc\/hosts\n127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4\n::1         localhost localhost.localdomain localhost6 localhost6.localdomain6\n172.20.10.3   orahost1.localdomain   orahost1\n172.20.10.4   orahost2.localdomain   orahost2\n<\/pre>\n<p>And at last, let&#8217;s make sure the 1521 port would be open for the SQL *Net communication : <\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1 \">\n-- (TODO on both machines)\n[root@orahost1 ~]# firewall-cmd --zone=public --add-port=1521\/tcp --permanent\nsuccess\n[root@orahost1 ~]# firewall-cmd --reload\nsuccess\n[root@orahost1 ~]# firewall-cmd --zone=public --list-ports\n1521\/tcp\n<\/pre>\n<h3>2- Installing Oracle AI Database 26 binaries <\/h3>\n<p>Reference : https:\/\/www.oracle.com\/database\/free\/get-started\/ (Choose the &#8220;Oracle Database Free Installation Guide&#8221; corresponding to your linux version) <\/p>\n<p>We begin by installing the preinstall package, which will take of all the pre-installation tasks, including the creation of the needed users and groups<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1 \">\n-- TODO on both VMs : dnf -y install oracle-ai-database-preinstall-26ai\n\n[root@orahost1 ~]# dnf -y install oracle-ai-database-preinstall-26ai\nLast metadata expiration check: 0:19:59 ago on Mon 27 Oct 2025 01:11:08 PM CET.\nDependencies resolved.\n=============================================================================================================================================================================================\n Package                                                  Architecture                 Version                                                 Repository                               Size\n=============================================================================================================================================================================================\nInstalling:\n oracle-ai-database-preinstall-26ai                       x86_64                       1.0-1.el8                                               ol8_appstream                            29 k\nInstalling dependencies:\n compat-openssl10                                         x86_64                       1:1.0.2o-4.el8_10.1                                     ol8_appstream                           1.1 M\n glibc-devel                                              x86_64                       2.28-251.0.2.el8                                        ol8_baseos_latest                        89 k\n ksh                                                      x86_64                       20120801-269.0.1.el8_10                                 ol8_appstream                           924 k\n libxcrypt-devel                                          x86_64                       4.1.1-6.el8                                             ol8_baseos_latest                        25 k\n lm_sensors-libs                                          x86_64                       3.4.0-23.20180522git70f7e08.el8                         ol8_baseos_latest                        59 k\n make                                                     x86_64                       1:4.2.1-11.el8                                          ol8_baseos_latest                       498 k\n sysstat                                                  x86_64                       11.7.3-13.0.2.el8_10                                    ol8_appstream                           427 k\n\nTransaction Summary\n=============================================================================================================================================================================================\nInstall  8 Packages\n\nTotal download size: 3.1 M\nInstalled size: 9.3 M\nDownloading Packages:\n(1\/8): libxcrypt-devel-4.1.1-6.el8.x86_64.rpm                                                                                                                 37 kB\/s |  25 kB     00:00\n(2\/8): lm_sensors-libs-3.4.0-23.20180522git70f7e08.el8.x86_64.rpm                                                                                             81 kB\/s |  59 kB     00:00\n(3\/8): glibc-devel-2.28-251.0.2.el8.x86_64.rpm                                                                                                               118 kB\/s |  89 kB     00:00\n(4\/8): make-4.2.1-11.el8.x86_64.rpm                                                                                                                          1.6 MB\/s | 498 kB     00:00\n(5\/8): oracle-ai-database-preinstall-26ai-1.0-1.el8.x86_64.rpm                                                                                               363 kB\/s |  29 kB     00:00\n(6\/8): ksh-20120801-269.0.1.el8_10.x86_64.rpm                                                                                                                2.6 MB\/s | 924 kB     00:00\n(7\/8): sysstat-11.7.3-13.0.2.el8_10.x86_64.rpm                                                                                                               2.4 MB\/s | 427 kB     00:00\n(8\/8): compat-openssl10-1.0.2o-4.el8_10.1.x86_64.rpm                                                                                                         2.2 MB\/s | 1.1 MB     00:00\n---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------\nTotal                                                                                                                                                        2.5 MB\/s | 3.1 MB     00:01\nOracle Linux 8 BaseOS Latest (x86_64)                                                                                                                        2.8 MB\/s | 3.1 kB     00:00\nImporting GPG key 0xAD986DA3:\n Userid     : \"Oracle OSS group (Open Source Software group) \"\n Fingerprint: 76FD 3DB1 3AB6 7410 B89D B10E 8256 2EA9 AD98 6DA3\n From       : \/etc\/pki\/rpm-gpg\/RPM-GPG-KEY-oracle\nKey imported successfully\nRunning transaction check\nTransaction check succeeded.\nRunning transaction test\nTransaction test succeeded.\nRunning transaction\n  Preparing        :                                                                                                                                                                     1\/1\n  Installing       : libxcrypt-devel-4.1.1-6.el8.x86_64                                                                                                                                  1\/8\n  Installing       : glibc-devel-2.28-251.0.2.el8.x86_64                                                                                                                                 2\/8\n  Running scriptlet: glibc-devel-2.28-251.0.2.el8.x86_64                                                                                                                                 2\/8\n  Installing       : make-1:4.2.1-11.el8.x86_64                                                                                                                                          3\/8\n  Running scriptlet: make-1:4.2.1-11.el8.x86_64                                                                                                                                          3\/8\n  Installing       : compat-openssl10-1:1.0.2o-4.el8_10.1.x86_64                                                                                                                         4\/8\n  Running scriptlet: compat-openssl10-1:1.0.2o-4.el8_10.1.x86_64                                                                                                                         4\/8\n  Installing       : ksh-20120801-269.0.1.el8_10.x86_64                                                                                                                                  5\/8\n  Running scriptlet: ksh-20120801-269.0.1.el8_10.x86_64                                                                                                                                  5\/8\n  Installing       : lm_sensors-libs-3.4.0-23.20180522git70f7e08.el8.x86_64                                                                                                              6\/8\n  Running scriptlet: lm_sensors-libs-3.4.0-23.20180522git70f7e08.el8.x86_64                                                                                                              6\/8\n  Installing       : sysstat-11.7.3-13.0.2.el8_10.x86_64                                                                                                                                 7\/8\n  Running scriptlet: sysstat-11.7.3-13.0.2.el8_10.x86_64                                                                                                                                 7\/8\n  Installing       : oracle-ai-database-preinstall-26ai-1.0-1.el8.x86_64                                                                                                                 8\/8\n  Running scriptlet: oracle-ai-database-preinstall-26ai-1.0-1.el8.x86_64                                                                                                                 8\/8\n  Verifying        : glibc-devel-2.28-251.0.2.el8.x86_64                                                                                                                                 1\/8\n  Verifying        : libxcrypt-devel-4.1.1-6.el8.x86_64                                                                                                                                  2\/8\n  Verifying        : lm_sensors-libs-3.4.0-23.20180522git70f7e08.el8.x86_64                                                                                                              3\/8\n  Verifying        : make-1:4.2.1-11.el8.x86_64                                                                                                                                          4\/8\n  Verifying        : compat-openssl10-1:1.0.2o-4.el8_10.1.x86_64                                                                                                                         5\/8\n  Verifying        : ksh-20120801-269.0.1.el8_10.x86_64                                                                                                                                  6\/8\n  Verifying        : oracle-ai-database-preinstall-26ai-1.0-1.el8.x86_64                                                                                                                 7\/8\n  Verifying        : sysstat-11.7.3-13.0.2.el8_10.x86_64                                                                                                                                 8\/8\n\nInstalled:\n  compat-openssl10-1:1.0.2o-4.el8_10.1.x86_64              glibc-devel-2.28-251.0.2.el8.x86_64   ksh-20120801-269.0.1.el8_10.x86_64                    libxcrypt-devel-4.1.1-6.el8.x86_64\n  lm_sensors-libs-3.4.0-23.20180522git70f7e08.el8.x86_64   make-1:4.2.1-11.el8.x86_64            oracle-ai-database-preinstall-26ai-1.0-1.el8.x86_64   sysstat-11.7.3-13.0.2.el8_10.x86_64\n\nComplete!\n<\/pre>\n<p>Next we download and copy the latest free Oracle AI Database 26ai rpm corresponding to the OS version.<br \/>\nFrom https:\/\/www.oracle.com\/database\/free\/get-started\/<br \/>\nFor me, that would be : oracle-ai-database-free-26ai-23.26.0-1.el9.x86_64.rpm<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1 \">\n-- Both Machines , dnf -y install oracle-ai-database-free-26ai-23.26.0-1.el9.x86_64.rpm\n\n[root@orahost1 software]# ls -l\ntotal 1398208\n-rw-r--r--. 1 root root 1431761556 Oct 27 14:10 oracle-ai-database-free-26ai-23.26.0-1.el9.x86_64.rpm\n\n[root@orahost1 software]# dnf -y install oracle-ai-database-free-26ai-23.26.0-1.el9.x86_64.rpm\nLast metadata expiration check: 1:06:41 ago on Mon 27 Oct 2025 01:11:08 PM CET.\nDependencies resolved.\n=============================================================================================================================================================================================\n Package                                                    Architecture                         Version                                    Repository                                  Size\n=============================================================================================================================================================================================\nInstalling:\n oracle-ai-database-free-26ai                               x86_64                               23.26.0-1                                  @commandline                               1.3 G\n\nTransaction Summary\n=============================================================================================================================================================================================\nInstall  1 Package\n\nTotal size: 1.3 G\nInstalled size: 3.6 G\nDownloading Packages:\nRunning transaction check\nTransaction check succeeded.\nRunning transaction test\nTransaction test succeeded.\nRunning transaction\n  Preparing        :                                                                                                                                                                     1\/1\n  Running scriptlet: oracle-ai-database-free-26ai-23.26.0-1.x86_64                                                                                                                       1\/1\n  Installing       : oracle-ai-database-free-26ai-23.26.0-1.x86_64                                                                                                                       1\/1\n  Running scriptlet: oracle-ai-database-free-26ai-23.26.0-1.x86_64                                                                                                                       1\/1\n[INFO] Executing post installation scripts...\n[INFO] Oracle home installed successfully and ready to be configured.\nTo configure Oracle AI Database Free, optionally modify the parameters in '\/etc\/sysconfig\/oracle-free-26ai.conf' and then run '\/etc\/init.d\/oracle-free-26ai configure' as root.\n\n  Verifying        : oracle-ai-database-free-26ai-23.26.0-1.x86_64                                                                                                                       1\/1\n\nInstalled:\n  oracle-ai-database-free-26ai-23.26.0-1.x86_64\n\nComplete!\n<\/pre>\n<h3>3. Create and Configure the Primary Database<\/h3>\n<p> On <strong>Machine 1<\/strong> (the future primary database host), still as <code>root<\/code>, run the configuration script. This creates: <br \/>&bull; a CDB with one PDB <br \/>&bull; a local listener <\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1 \"> \n-- Only on Machine 1\n[root@orahost1 software]# \/etc\/init.d\/oracle-free-26ai configure\nSpecify a password to be used for database accounts. Oracle recommends that the password entered should be at least 8 characters in length, contain at least 1 uppercase character, 1 lower case character and 1 digit [0-9]. Note that the same password will be used for SYS, SYSTEM and PDBADMIN accounts:\nConfirm the password:\nConfiguring Oracle Listener.\nListener configuration succeeded.\nConfiguring Oracle AI Database FREE.\nEnter SYS user password:\n*************\nEnter SYSTEM user password:\n***********\nEnter PDBADMIN User Password:\n**************\nPrepare for db operation\n7% complete\nCopying database files\n29% complete\nCreating and starting Oracle instance\n30% complete\n33% complete\n36% complete\n39% complete\n43% complete\nCompleting Database Creation\n47% complete\n49% complete\n50% complete\nCreating Pluggable Databases\n54% complete\n71% complete\nExecuting Post Configuration Actions\n93% complete\nRunning Custom Scripts\n100% complete\nDatabase creation complete. For details check the logfiles at:\n \/opt\/oracle\/cfgtoollogs\/dbca\/FREE.\nDatabase Information:\nGlobal Database Name:FREE\nSystem Identifier(SID):FREE\nLook at the log file \"\/opt\/oracle\/cfgtoollogs\/dbca\/FREE\/FREE.log\" for further details.\n\nConnect to Oracle AI Database using one of the connect strings:\n     Pluggable database: orahost1\/FREEPDB1\n     Multitenant container database: orahost1\n <\/pre>\n<p> Now we have: <br \/>&bull; a multitenant <code>FREE<\/code> database <br \/>&bull; a local listener listening on port 1521 <\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1 \">\n[root@orahost1 software]# su - oracle\n[oracle@orahost1 ~]$ . oraenv\nORACLE_SID = [oracle] ? FREE\nThe Oracle base has been set to \/opt\/oracle\n[oracle@orahost1 ~]$ sqlplus \/ as sysdba\n\nConnected to:\nOracle AI Database 26ai Free Release 23.26.0.0.0 - Develop, Learn, and Run for Free\nVersion 23.26.0.0.0\n\nSQL&gt; show pdbs\n\n    CON_ID CON_NAME                       OPEN MODE  RESTRICTED\n---------- ------------------------------ ---------- ----------\n         2 PDB$SEED                       READ ONLY  NO\n         3 FREEPDB1                       READ WRITE NO\nSQL&gt; exit\nDisconnected from Oracle AI Database 26ai Free Release 23.26.0.0.0 - Develop, Learn, and Run for Free\nVersion 23.26.0.0.0\n[oracle@orahost1 ~]$ lsnrctl status\n\nLSNRCTL for Linux: Version 23.26.0.0.0 - Production on 27-OCT-2025 14:37:34\n\nCopyright (c) 1991, 2025, Oracle.  All rights reserved.\n\nConnecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=orahost1.localdomain)(PORT=1521)))\nSTATUS of the LISTENER\n------------------------\nAlias                     LISTENER\nVersion                   TNSLSNR for Linux: Version 23.26.0.0.0 - Production\nStart Date                27-OCT-2025 14:26:40\nUptime                    0 days 0 hr. 10 min. 54 sec\nTrace Level               off\nSecurity                  ON: Local OS Authentication\nSNMP                      OFF\nDefault Service           FREE\nListener Parameter File   \/opt\/oracle\/product\/26ai\/dbhomeFree\/network\/admin\/listener.ora\nListener Log File         \/opt\/oracle\/diag\/tnslsnr\/orahost1\/listener\/alert\/log.xml\nListening Endpoints Summary...\n  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=orahost1.localdomain)(PORT=1521)))\n  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))\nServices Summary...\nService \"4224ed483625a7e9e063050a14accd4f\" has 1 instance(s).\n  Instance \"FREE\", status READY, has 1 handler(s) for this service...\nService \"FREE\" has 1 instance(s).\n  Instance \"FREE\", status READY, has 1 handler(s) for this service...\nService \"FREEXDB\" has 1 instance(s).\n  Instance \"FREE\", status READY, has 1 handler(s) for this service...\nService \"freepdb1\" has 1 instance(s).\n  Instance \"FREE\", status READY, has 1 handler(s) for this service...\nThe command completed successfully\n <\/pre>\n<h3>4. Create the True Cache Instance<\/h3>\n<p> Next, we create and configure the True Cache instance on <strong>Machine 2<\/strong>. We only need to copy the password file from the primary to the True Cache host first: <\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1 \"> \n[oracle@orahost2 bin]$ ll \/opt\/oracle\/tmp\/orapwFREE\n-rw-r-----. 1 oracle oinstall 2048 Sep 17 16:56 \/opt\/oracle\/tmp\/orapwFREE\n<\/pre>\n<p> Then we run <code>dbca<\/code> with the <code>-createTrueCache<\/code> option: <\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1 \"> \n[oracle@orahost2 bin]$ .\/dbca -silent -createTrueCache -gdbName FREE -sourceDBConnectionString  orahost1:1521\/FREE -passwordFileFromSourceDB \/opt\/oracle\/tmp\/orapwFREE -dbUniqueName FREE_TC -sid FREE\nEnter Remote DB SYS user password:\n\nSession ID of the current execution is: 2\n-----------------\nRunning Extract_password_file_from_blob_file job\nCompleted Extract_password_file_from_blob_file job\n25% complete\n-----------------\nRunning Create_static_listener job\nCompleted Create_static_listener job\n38% complete\n-----------------\nRunning Register_listener job\nCompleted Register_listener job\n50% complete\n-----------------\nRunning Extract_tde_wallet_from_blob_file job\nSkipping. Job is detected as not applicable.\n54% complete\n-----------------\nRunning Setup_required_directories job\nSkipping. Job is detected as not applicable.\n57% complete\n-----------------\nRunning Create_pfile job\nCompleted Create_pfile job\n61% complete\n-----------------\nRunning Start_nomount_instance job\nCompleted Start_nomount_instance job\n64% complete\n-----------------\nRunning Create_TDE_wallet job\nSkipping. Job is detected as not applicable.\n68% complete\n-----------------\nRunning Create_truecache_instance job\nCompleted Create_truecache_instance job\n71% complete\n-----------------\nRunning Add_oratab_entry job\nCompleted Add_oratab_entry job\n75% complete\n-----------------\nRunning Reopen_wallet job\nSkipping. Job is detected as not applicable.\n100% complete\nLook at the log file \"\/opt\/oracle\/cfgtoollogs\/dbca\/FREE_TC\/FREE_TC0.log\" for further details.\n <\/pre>\n<p> The instance is created. Let\u2019s confirm its state: <\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1 \">\nSQL&gt; select open_mode,database_role from v$database;\n\nOPEN_MODE            DATABASE_ROLE\n-------------------- ----------------\nREAD ONLY WITH APPLY TRUE CACHE\n\nSQL&gt; select name from v$database;\n\nNAME\n---------\nFREE\n\nSQL&gt; select db_unique_name from v$database;\n\nDB_UNIQUE_NAME\n------------------------------\nFREE_TC\n <\/pre>\n<p> As you can see, it looks very similar to a Data Guard standby \u2014 except there are no datafiles. <\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1 \"> \nSQL&gt; select name from v$controlfile;\n\nNAME\n--------------------------------------------------------------------------------\n\/opt\/oracle\/oradata\/FREE_TC\/controlfile\/o1_mf_nhz3od6n_.ctl\n\nSQL&gt; show parameter spfile\n\nNAME                                 TYPE        VALUE\n------------------------------------ ----------- ------------------------------\nspfile                               string      \/opt\/oracle\/product\/23ai\/dbhom\n                                                 eFree\/dbs\/spfileFREE.ora\nSQL&gt; select name from v$datafile;\n\nno rows selected\n\nSQL&gt; select name from v$tempfile;\n\nNAME\n--------------------------------------------------------------------------------\n\/opt\/oracle\/oradata\/S_TEMP_##TC##_FREE#TC_8192_1_3_201_1\n\/opt\/oracle\/oradata\/S_TEMP_##TC##_FREE#TC_8192_2_3_202_1\n\/opt\/oracle\/oradata\/S_TEMP_##TC##_FREE#TC_8192_3_3_203_1\n <\/pre>\n<h3>5. Configure a True Cache Application Service<\/h3>\n<p> Applications can use True Cache in two main ways: <\/p>\n<p> <strong>Option 1:<\/strong> The application maintains two physical connections: <br \/>&bull; One to the primary database <br \/>&bull; One to the True Cache instance <\/p>\n<p> Each connection uses its own database service. The app chooses the connection based on whether it needs to read or write. This works with any language and any existing client drivers. <\/p>\n<p> <strong>Option 2:<\/strong> The application maintains one logical connection (to the primary database service). The JDBC Thin driver (starting with Oracle AI Database 26ai) automatically manages physical connections to both the primary and True Cache. This option is for Java applications. <\/p>\n<p> For more details, see:<br \/> https:\/\/docs.oracle.com\/en\/database\/oracle\/oracle-database\/26\/odbtc\/methods-connecting-true-cache.html <\/p>\n<p> In this example, we\u2019ll configure an application service for a hypothetical sales application that queries data in the <code>FREEPDB1<\/code> PDB. <\/p>\n<p> Step 1: On the <strong>primary database<\/strong>, create and start a service called <code>SALES<\/code>: <\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1 \"> \n-- On the primary \nSQL&gt; alter session set container=FREEPDB1;\n\nSession altered.\n\nSQL&gt; BEGIN\n   DBMS_SERVICE.CREATE_SERVICE('SALES', 'SALES');\n   DBMS_SERVICE.START_SERVICE('SALES');\nEND;\n\/  \n<\/pre>\n<p> Now the service is visible in the primary listener: <\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1 \"> \n[oracle@orahost1 ~]$ lsnrctl status | grep SALES \nService \"SALES\" has 1 instance(s). \n<\/pre>\n<p> Step 2: From the primary host, run <code>dbca<\/code> again to configure the related True Cache service (<code>sales_tc<\/code>) on the True Cache instance: <\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1 \"> \n[oracle@orahost1 ~]$ $ORACLE_HOME\/bin\/dbca -configureDatabase -configureTrueCacheInstanceService -sourceDB FREE -trueCacheConnectString orahost2:1521\/FREE_TC -trueCacheServiceName sales_tc -serviceName sales -pdbName FREEPDB1 -silent\nSession ID of the current execution is: 1\n-----------------\nRunning Initialization job\nEnter SYS user password:\n\nCompleted Initialization job\n33% complete\n-----------------\nRunning Validate_true_cache_instance_connection job\nCompleted Validate_true_cache_instance_connection job\n37% complete\n-----------------\nRunning Validate_dataguard job\nSkipping. Job is detected as not applicable.\n41% complete\n-----------------\nRunning Validate_db_version job\nCompleted Validate_db_version job\n44% complete\n-----------------\nRunning Validate_true_cache_instance job\nCompleted Validate_true_cache_instance job\n48% complete\n-----------------\nRunning Validate_archive_log_mode job\nCompleted Validate_archive_log_mode job\n52% complete\n-----------------\nRunning Validate_pdb job\nCompleted Validate_pdb job\n56% complete\n-----------------\nRunning Validate_primary_db_service job\nCompleted Validate_primary_db_service job\n59% complete\n-----------------\nRunning Validate_true_cache_db_service job\nCompleted Validate_true_cache_db_service job\n63% complete\n-----------------\nRunning Validate_true_cache_instance_open_mode job\nCompleted Validate_true_cache_instance_open_mode job\n67% complete\n-----------------\nRunning Create_truecache_service job\nCompleted Create_truecache_service job\n73% complete\n-----------------\nRunning Add_network_entry job\nCompleted Add_network_entry job\n80% complete\n-----------------\nRunning Modify_primary_service job\nCompleted Modify_primary_service job\n87% complete\n-----------------\nRunning Start_truecache_service job\nCompleted Start_truecache_service job\n93% complete\n-----------------\nRunning Enable_service_registration job\nCompleted Enable_service_registration job\n100% complete\nLook at the log file \"\/opt\/oracle\/cfgtoollogs\/dbca\/FREE\/FREE0.log\" for further details.\n <\/pre>\n<p>The service has been created, we can check on the true cache machine : <\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1 \">\n[oracle@orahost2 bin]$ lsnrctl status | grep sales_tc\nService \"sales_tc\" has 1 instance(s).\n[oracle@orahost2 bin]$ sqlplus \/ as sysdba\n\nSQL&gt; show pdbs\n\n    CON_ID CON_NAME                       OPEN MODE  RESTRICTED\n---------- ------------------------------ ---------- ----------\n         2 PDB$SEED                       READ ONLY  NO\n         3 FREEPDB1                       READ ONLY  NO\nSQL&gt; alter session set container=freepdb1;\n\nSession altered.\n\nSQL&gt; select name from v$active_services;\n\nNAME\n----------------------------------------------------------------\nsales_tc\nFREEPDB1\n<\/pre>\n<h3>Conclusion<\/h3>\n<p> &bull; It\u2019s fast and cheap to build a small lab for Oracle AI Database 26ai and start testing new features on your laptop. <\/p>\n<p> &bull; True Cache is one of those features: it&#8217;s easy to set up, designed for offloading read-only workload, and included with Enterprise Edition licensing (unlike Active Data Guard which requires an extra option). It\u2019s definitely worth evaluating for applications that mostly read and don&#8217;t or rarely need to update data. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction Oracle Database True Cache is an in-memory, read-only cache designed to reduce latency and offload read activity from the primary database. It&#8217;s comparable to an Active Data Guard standby instance, but it runs mostly in memory. This feature debuted in Oracle Database 23ai, which has since been rebranded as Oracle AI Database 26ai. There [&hellip;]<\/p>\n","protected":false},"author":136,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[59],"tags":[],"type_dbi":[],"class_list":["post-41340","post","type-post","status-publish","format-standard","hentry","category-oracle"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>True Cache on Oracle AI Database 26ai: Quickstart - dbi Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"True Cache on Oracle AI Database 26ai: Quickstart\" \/>\n<meta property=\"og:description\" content=\"Introduction Oracle Database True Cache is an in-memory, read-only cache designed to reduce latency and offload read activity from the primary database. It&#8217;s comparable to an Active Data Guard standby instance, but it runs mostly in memory. This feature debuted in Oracle Database 23ai, which has since been rebranded as Oracle AI Database 26ai. There [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2025-10-30T15:43:50+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-10-30T15:43:52+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"591\" \/>\n\t<meta property=\"og:image:height\" content=\"233\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Abdessamed El Ahmar\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Abdessamed El Ahmar\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/\"},\"author\":{\"name\":\"Abdessamed El Ahmar\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/c7be6ff9bc9dd6391b89fd662430836d\"},\"headline\":\"True Cache on Oracle AI Database 26ai: Quickstart\",\"datePublished\":\"2025-10-30T15:43:50+00:00\",\"dateModified\":\"2025-10-30T15:43:52+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/\"},\"wordCount\":819,\"commentCount\":0,\"image\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC1.png\",\"articleSection\":[\"Oracle\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/\",\"name\":\"True Cache on Oracle AI Database 26ai: Quickstart - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC1.png\",\"datePublished\":\"2025-10-30T15:43:50+00:00\",\"dateModified\":\"2025-10-30T15:43:52+00:00\",\"author\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/c7be6ff9bc9dd6391b89fd662430836d\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/#primaryimage\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC1.png\",\"contentUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC1.png\",\"width\":591,\"height\":233},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/www.dbi-services.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"True Cache on Oracle AI Database 26ai: Quickstart\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/\",\"name\":\"dbi Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/c7be6ff9bc9dd6391b89fd662430836d\",\"name\":\"Abdessamed El Ahmar\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/b1d8401c12bf025455088d30d11d0652bb7e78107524deda83c07540c685b26b?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/b1d8401c12bf025455088d30d11d0652bb7e78107524deda83c07540c685b26b?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/b1d8401c12bf025455088d30d11d0652bb7e78107524deda83c07540c685b26b?s=96&d=mm&r=g\",\"caption\":\"Abdessamed El Ahmar\"},\"url\":\"https:\/\/www.dbi-services.com\/blog\/author\/abdessamedelahmar\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"True Cache on Oracle AI Database 26ai: Quickstart - dbi Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/","og_locale":"en_US","og_type":"article","og_title":"True Cache on Oracle AI Database 26ai: Quickstart","og_description":"Introduction Oracle Database True Cache is an in-memory, read-only cache designed to reduce latency and offload read activity from the primary database. It&#8217;s comparable to an Active Data Guard standby instance, but it runs mostly in memory. This feature debuted in Oracle Database 23ai, which has since been rebranded as Oracle AI Database 26ai. There [&hellip;]","og_url":"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/","og_site_name":"dbi Blog","article_published_time":"2025-10-30T15:43:50+00:00","article_modified_time":"2025-10-30T15:43:52+00:00","og_image":[{"width":591,"height":233,"url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC1.png","type":"image\/png"}],"author":"Abdessamed El Ahmar","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Abdessamed El Ahmar","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/"},"author":{"name":"Abdessamed El Ahmar","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/c7be6ff9bc9dd6391b89fd662430836d"},"headline":"True Cache on Oracle AI Database 26ai: Quickstart","datePublished":"2025-10-30T15:43:50+00:00","dateModified":"2025-10-30T15:43:52+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/"},"wordCount":819,"commentCount":0,"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC1.png","articleSection":["Oracle"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/","url":"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/","name":"True Cache on Oracle AI Database 26ai: Quickstart - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/#primaryimage"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC1.png","datePublished":"2025-10-30T15:43:50+00:00","dateModified":"2025-10-30T15:43:52+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/c7be6ff9bc9dd6391b89fd662430836d"},"breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/#primaryimage","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC1.png","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2025\/10\/TC1.png","width":591,"height":233},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/true-cache-on-oracle-ai-database-26ai-quickstart\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"True Cache on Oracle AI Database 26ai: Quickstart"}]},{"@type":"WebSite","@id":"https:\/\/www.dbi-services.com\/blog\/#website","url":"https:\/\/www.dbi-services.com\/blog\/","name":"dbi Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/c7be6ff9bc9dd6391b89fd662430836d","name":"Abdessamed El Ahmar","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/b1d8401c12bf025455088d30d11d0652bb7e78107524deda83c07540c685b26b?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/b1d8401c12bf025455088d30d11d0652bb7e78107524deda83c07540c685b26b?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/b1d8401c12bf025455088d30d11d0652bb7e78107524deda83c07540c685b26b?s=96&d=mm&r=g","caption":"Abdessamed El Ahmar"},"url":"https:\/\/www.dbi-services.com\/blog\/author\/abdessamedelahmar\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/41340","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/users\/136"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=41340"}],"version-history":[{"count":18,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/41340\/revisions"}],"predecessor-version":[{"id":41419,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/41340\/revisions\/41419"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=41340"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=41340"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=41340"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=41340"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}