{"id":10995,"date":"2018-02-26T07:40:43","date_gmt":"2018-02-26T06:40:43","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/"},"modified":"2018-02-26T07:40:43","modified_gmt":"2018-02-26T06:40:43","slug":"a-free-persistent-google-cloud-service-with-oracle-xe","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/","title":{"rendered":"A free persistent Google Cloud service with Oracle XE"},"content":{"rendered":"<h2>By Franck Pachot<\/h2>\n<p>.<br \/>\nIn a <a href=\"https:\/\/www.dbi-services.com\/blog\/testing-oracle-sql-online\/\" target=\"_blank\" rel=\"noopener noreferrer\">previous post<\/a> I&#8217;ve listed several free online services which run an Oracle XE so that you can test your SQL easily. You may want use Oracle XE further, with full access to the database and its host, and still from a web browser. You probably have a Google account. Then you also have a Virtual Machine on the Google Cloud (0.5 vCPU \/ 1.70 GB RAM boostable to 1 vCPU \/ 3.75 GB) and 5 GB of persistent storage (as long as you used it in the 120 previous days). Just try this Google Cloud Shell: <a href=\"https:\/\/console.cloud.google.com\/cloudshell\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/console.cloud.google.com\/cloudshell<\/a>.<br \/>\nIn this post, I explain how to install Oracle XE there.<br \/>\n<!--more--><br \/>\nFirst, you need to download Oracle XE. You do that on your laptop to upload it to the Google Cloud Shell. For legal reason, there is no automated way to download it with wget because you have to manually accept the OTN License Term: <a href=\"http:\/\/www.oracle.com\/technetwork\/database\/database-technologies\/express-edition\/downloads\/index.html\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.oracle.com\/technetwork\/database\/database-technologies\/express-edition\/downloads\/index.html<\/a> and choose &#8216;Oracle Database Express Edition 11g Release 2 for Linux x64&#8217;<\/p>\n<p>You can try to upload it to the Cloud Shell directly (menu on top right &#8211; upload file) but I had problems with the size of the file, so I&#8217;ve split it into two files:<\/p>\n<pre><code>\nsplit -b 150M oracle-xe-11.2.0-1.0.x86_64.rpm.zip\n<\/code><\/pre>\n<p>You should have &#8216;split&#8217; even on Windows (Ubuntu Bash Shell) but you can also use any tool. 7-zip can do that.<\/p>\n<p>I uploaded the two files:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureG0003.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureG0003.png\" alt=\"CaptureG0003\" width=\"903\" height=\"749\" class=\"aligncenter size-full wp-image-21565\" \/><\/a><\/p>\n<p>Now on the Google Cloud shell, concatenate the files back to the .zip:<\/p>\n<pre><code>\nfranck_pachot@cloudshell:~$ cat xa* &gt; oracle-xe-11.2.0-1.0.x86_64.rpm.zip\n<\/code><\/pre>\n<p>Unzip it:<\/p>\n<pre><code>\nfranck_pachot@cloudshell:~$ unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip\nArchive:  ora.zip\n   creating: Disk1\/\n   creating: Disk1\/upgrade\/\n  inflating: Disk1\/upgrade\/gen_inst.sql\n   creating: Disk1\/response\/\n  inflating: Disk1\/response\/xe.rsp\n  inflating: Disk1\/oracle-xe-11.2.0-1.0.x86_64.rpm\n<\/code><\/pre>\n<p>This .zip contains a .rpm but we are on Debian in the Google Cloud Shell. In addition to that, I&#8217;ll not follow the standard installation of Oracle XE because only my $HOME filesystem is persistent, so I want everything there. I need rpm2cpio to extract from the .rpm, and I&#8217;ll need libaio1 to install Oracle:<\/p>\n<pre><code>\nfranck_pachot@cloudshell:~$ sudo apt-get -y install rpm2cpio libaio1\n<\/code><\/pre>\n<p>Here is the extraction:<\/p>\n<pre><code>\nfranck_pachot@cloudshell:~$ rpm2cpio Disk1\/oracle-xe-11.2.0-1.0.x86_64.rpm | cpio -idmv\n<\/code><\/pre>\n<p>This extracted to u01, etc and usr in my $HOME directory and I&#8217;ll leave the Oracle Home there.<br \/>\nI can remove the intermediate files:<\/p>\n<pre><code>\nfranck_pachot@cloudshell:~$ rm -f xa? oracle-xe-11.2.0-1.0.x86_64.rpm.zip Disk1\n<\/code><\/pre>\n<p>The Oracle XE deployment contains a &#8216;createdb.sh&#8217; which will create the XE database. You don&#8217;t have dbca here, you don&#8217;t have templates. Oracle XE is build to be small.<br \/>\nJust set ORACLE_HOME, PATH, LD_LIBRARY_PATH and run createdb.sh<\/p>\n<pre><code>\nexport ORACLE_HOME=$HOME\/u01\/app\/oracle\/product\/11.2.0\/xe\necho \"$PATH\" | grep \"$ORACLE_HOME\" || export PATH=$PATH:$ORACLE_HOME\/bin\necho \"$LD_LIBRARY_PATH\" | grep \"$ORACLE_HOME\" || export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME\/lib\ncreatedb.sh\n<\/code><\/pre>\n<p>This takes time: create database, catalog, catproc&#8230; and the you have your database<\/p>\n<p>The listener is not started. We need to create the directory for the log, and to define listener.ora to listen on default port:<\/p>\n<pre><code>\nmkdir -p .\/u01\/app\/oracle\/product\/11.2.0\/xe\/network\/log\necho \"LISTENER=(DESCRIPTION_LIST=(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 0.0.0.0)(PORT = 1521))))\" &gt; .\/u01\/app\/oracle\/product\/11.2.0\/xe\/network\/admin\/listener.ora\nlsnrctl start\nexport ORACLE_SID=XE\nsqlplus sys\/oracle as sysdba &lt;&lt;&lt;&#039;alter system register;&#039;\n<\/code><\/pre>\n<p>You should see the XE service registered here:<\/p>\n<pre><code>\nfranck_pachot@cloudshell:~$ lsnrctl status\n&nbsp;\nLSNRCTL for Linux: Version 11.2.0.2.0 - Production on 25-FEB-2018 23:01:40\n&nbsp;\nCopyright (c) 1991, 2011, Oracle.  All rights reserved.\n&nbsp;\nConnecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=0.0.0.0)(PORT=1521)))\nSTATUS of the LISTENER\n------------------------\nAlias                     LISTENER\nVersion                   TNSLSNR for Linux: Version 11.2.0.2.0 - Production\nStart Date                25-FEB-2018 23:00:01\nUptime                    0 days 0 hr. 1 min. 38 sec\nTrace Level               off\nSecurity                  ON: Local OS Authentication\nSNMP                      OFF\nListener Parameter File   \/home\/frank_pachot\/u01\/app\/oracle\/product\/11.2.0\/xe\/network\/admin\/listener.ora\nListener Log File         \/home\/frank_pachot\/u01\/app\/oracle\/product\/11.2.0\/xe\/network\/log\/listener.log\nListening Endpoints Summary...\n  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=0.0.0.0)(PORT=1521)))\n  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=8080))(Presentation=HTTP)(Session=RAW))\nServices Summary...\nService \"XE\" has 1 instance(s).\n  Instance \"XE\", status READY, has 1 handler(s) for this service...\nService \"XEXDB\" has 1 instance(s).\n  Instance \"XE\", status READY, has 1 handler(s) for this service...\nThe command completed successfully\n<\/code><\/pre>\n<p>Note that you cannot access your Google Cloud shell from outside, and then you can connect locally. But having a listener and connecting through services is always a good idea.<\/p>\n<p>If your session is inactive, you may lose the connection and even have the VM stopped. But your $HOME will still be there when you restart, so you can set the .profile to set the correct environment and start the listener and database if not already running:<\/p>\n<pre><code>cat &gt;&gt; ~\/.profile&lt;&lt;&#039;END&#039;\nexport ORACLE_HOME=$HOME\/u01\/app\/oracle\/product\/11.2.0\/xe\necho &quot;$PATH&quot; | grep &quot;$ORACLE_HOME&quot; || export PATH=$PATH:$ORACLE_HOME\/bin\necho &quot;$LD_LIBRARY_PATH&quot; | grep &quot;$ORACLE_HOME&quot; || export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME\/lib\nexport ORACLE_SID=XE\nps -edf | grep [t]nslsnr || lsnrctl start\nps -edf | grep [s]mon_XE || sqlplus sys\/oracle as sysdba &lt;&lt;&lt; startup\nEND<\/code><\/pre>\n<p>I don&#8217;t use \/etc\/oratab here because it is outside of the persistent area.<\/p>\n<p>We can not connect &#8216;\/ as sysdba&#8217; because we are not in the &#8216;dba&#8217; group. I don&#8217;t think we can change this in Oracle XE. Of course, we can sudo to root and add the group, but that will not be persistent. However, no need for it. The password for SYS is &#8220;oracle&#8221; and you can create all the users you want. The database, being stored under $HOME, is persistent.<\/p>\n<p>Here are my datafiles:<\/p>\n<pre><code>\nfranck_pachot@cloudshell:~$ rman target sys\/oracle\n&nbsp;\nRecovery Manager: Release 11.2.0.2.0 - Production on Sun Feb 25 21:28:00 2018\n&nbsp;\nCopyright (c) 1982, 2009, Oracle and\/or its affiliates.  All rights reserved.\n&nbsp;\nconnected to target database: XE (DBID=2850165315)\n&nbsp;\nRMAN&gt; report schema;\n&nbsp;\nusing target database control file instead of recovery catalog\nReport of database schema for database with db_unique_name XE\n&nbsp;\nList of Permanent Datafiles\n===========================\nFile Size(MB) Tablespace           RB segs Datafile Name\n---- -------- -------------------- ------- ------------------------\n1    280      SYSTEM               ***     \/home\/franck_pachot\/u01\/app\/oracle\/product\/11.2.0\/xe\/dbs\/system.dbf\n2    190      SYSAUX               ***     \/home\/franck_pachot\/u01\/app\/oracle\/product\/11.2.0\/xe\/dbs\/sysaux.dbf\n3    235      UNDOTBS1             ***     \/home\/franck_pachot\/u01\/app\/oracle\/product\/11.2.0\/xe\/dbs\/undotbs1.dbf\n4    100      USERS                ***     \/home\/franck_pachot\/u01\/app\/oracle\/product\/11.2.0\/xe\/dbs\/users.dbf\n&nbsp;\nList of Temporary Files\n=======================\nFile Size(MB) Tablespace           Maxsize(MB) Tempfile Name\n---- -------- -------------------- ----------- --------------------\n1    20       TEMP                 500         \/home\/franck_pachot\/u01\/app\/oracle\/product\/11.2.0\/xe\/dbs\/temp.dbf\n<\/code><\/pre>\n<p>You find the alert.log under $ORACLE_HOME\/dbs (as all the database files):<\/p>\n<pre><code>\nfranck_pachot@cloudshell:~$ tail $HOME\/u01\/app\/oracle\/product\/11.2.0\/xe\/log\/diag\/rdbms\/xe\/XE\/trace\/alert_XE.logThread 1 advanced to log sequence 17 (LGWR switch)\n  Current log# 2 seq# 17 mem# 0: \/home\/franck_pachot\/u01\/app\/oracle\/product\/11.2.0\/xe\/dbs\/log2.dbf\nSun Feb 25 22:01:05 2018\nShared IO Pool defaulting to 44MB. Trying to get it from Buffer Cache for process 2875.\nSun Feb 25 22:09:38 2018\nThread 1 advanced to log sequence 18 (LGWR switch)\n  Current log# 3 seq# 18 mem# 0: \/home\/franck_pachot\/u01\/app\/oracle\/product\/11.2.0\/xe\/dbs\/log3.dbf\nSun Feb 25 22:09:43 2018\nSERVER COMPONENT id=UTLRP_BGN: timestamp=2018-02-25 22:09:43\nSERVER COMPONENT id=UTLRP_END: timestamp=2018-02-25 22:09:50<\/code><\/pre>\n<p>The limitations and features of the Google Cloud Shell are documented here: <a href=\"https:\/\/cloud.google.com\/shell\/docs\/features\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/cloud.google.com\/shell\/docs\/features<\/a>. In addition to the command line (through &#8216;tmux&#8217; which allows to split the screen in different panes) you have a file editor in the browser. You can also install Apex as you have browser access to port 8080 in https (icon on top right just before the menu).<\/p>\n<p>The major limitation here comes from Oracle XE which is an old version (11.2.0.2) but this year should come Oracle XE 18c with the latest features. Oracle XE 18c may also come with EM Express and Google Cloud Shell gives access to https. I just hope that there will be a small image for Oracle XE 18c as we have only 5GB here. Maybe a docker container will be easier then, with only the database in an external volume under $HOME. We will see, but in the meanwhile, there&#8217;s already a lot we can do with Oracle XE. You can play with Backup\/Recovery scenarios and you will always be able to re-create the database by running the createdb.sh again.<\/p>\n<h3>Added 26-FEB-2018<\/h3>\n<p>As I said that this can be a good lab to practice backup\/recovery scenarios, you should run in archive log mode:<\/p>\n<pre><code>\nsqlplus sys\/oracle as sysdba &lt;&lt;END\nshutdown immediate;\nstartup mount;\nalter database archivelog;\nalter database open;\nEND\n<\/code><\/pre>\n<p>Then to avoid to fill-in the recovery area, you can backup the database and archived logs frequently. You don&#8217;t need to put the backups on the persistent storage as it is a lab.<br \/>\nI suggest to put the following at the end of the .profile:<\/p>\n<pre><code>\nrman target sys\/oracle &gt; last_backup.log &lt;&lt;&lt;&quot;set echo on; configure channel device type disk format &#039;\/var\/tmp\/rman_backupset_XE_%U&#039;; configure backup optimization on; configure controlfile autobackup on; crosscheck backup; delete noprompt expired backup; backup database plus archivelog; delete noprompt obsolete;&quot; &amp;\n<\/code><\/pre>\n<p>This will run a backup to \/var\/tmp when you connect, delete obsolete backups, and expired ones (as they will be removed if the machine is reset after long inactivity).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>By Franck Pachot . In a previous post I&#8217;ve listed several free online services which run an Oracle XE so that you can test your SQL easily. You may want use Oracle XE further, with full access to the database and its host, and still from a web browser. You probably have a Google account. [&hellip;]<\/p>\n","protected":false},"author":27,"featured_media":10996,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[955,59],"tags":[135,1301,1049,96,1302],"type_dbi":[],"class_list":["post-10995","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cloud","category-oracle","tag-cloud","tag-free","tag-google-cloud","tag-oracle","tag-xe"],"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>A free persistent Google Cloud service with Oracle XE - 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\/a-free-persistent-google-cloud-service-with-oracle-xe\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"A free persistent Google Cloud service with Oracle XE\" \/>\n<meta property=\"og:description\" content=\"By Franck Pachot . In a previous post I&#8217;ve listed several free online services which run an Oracle XE so that you can test your SQL easily. You may want use Oracle XE further, with full access to the database and its host, and still from a web browser. You probably have a Google account. [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2018-02-26T06:40:43+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureG0003.png\" \/>\n\t<meta property=\"og:image:width\" content=\"903\" \/>\n\t<meta property=\"og:image:height\" content=\"749\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Oracle Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Oracle Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 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\/a-free-persistent-google-cloud-service-with-oracle-xe\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/\"},\"author\":{\"name\":\"Oracle Team\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee\"},\"headline\":\"A free persistent Google Cloud service with Oracle XE\",\"datePublished\":\"2018-02-26T06:40:43+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/\"},\"wordCount\":906,\"commentCount\":0,\"image\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureG0003.png\",\"keywords\":[\"Cloud\",\"Free\",\"Google Cloud\",\"Oracle\",\"XE\"],\"articleSection\":[\"Cloud\",\"Oracle\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/\",\"name\":\"A free persistent Google Cloud service with Oracle XE - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureG0003.png\",\"datePublished\":\"2018-02-26T06:40:43+00:00\",\"author\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/#primaryimage\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureG0003.png\",\"contentUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureG0003.png\",\"width\":903,\"height\":749},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/www.dbi-services.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"A free persistent Google Cloud service with Oracle XE\"}]},{\"@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\/66ab87129f2d357f09971bc7936a77ee\",\"name\":\"Oracle Team\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g\",\"caption\":\"Oracle Team\"},\"url\":\"https:\/\/www.dbi-services.com\/blog\/author\/oracle-team\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"A free persistent Google Cloud service with Oracle XE - 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\/a-free-persistent-google-cloud-service-with-oracle-xe\/","og_locale":"en_US","og_type":"article","og_title":"A free persistent Google Cloud service with Oracle XE","og_description":"By Franck Pachot . In a previous post I&#8217;ve listed several free online services which run an Oracle XE so that you can test your SQL easily. You may want use Oracle XE further, with full access to the database and its host, and still from a web browser. You probably have a Google account. [&hellip;]","og_url":"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/","og_site_name":"dbi Blog","article_published_time":"2018-02-26T06:40:43+00:00","og_image":[{"width":903,"height":749,"url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureG0003.png","type":"image\/png"}],"author":"Oracle Team","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Oracle Team","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/"},"author":{"name":"Oracle Team","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee"},"headline":"A free persistent Google Cloud service with Oracle XE","datePublished":"2018-02-26T06:40:43+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/"},"wordCount":906,"commentCount":0,"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureG0003.png","keywords":["Cloud","Free","Google Cloud","Oracle","XE"],"articleSection":["Cloud","Oracle"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/","url":"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/","name":"A free persistent Google Cloud service with Oracle XE - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/#primaryimage"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureG0003.png","datePublished":"2018-02-26T06:40:43+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee"},"breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/#primaryimage","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureG0003.png","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/CaptureG0003.png","width":903,"height":749},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/a-free-persistent-google-cloud-service-with-oracle-xe\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"A free persistent Google Cloud service with Oracle XE"}]},{"@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\/66ab87129f2d357f09971bc7936a77ee","name":"Oracle Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g","caption":"Oracle Team"},"url":"https:\/\/www.dbi-services.com\/blog\/author\/oracle-team\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/10995","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\/27"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=10995"}],"version-history":[{"count":0,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/10995\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media\/10996"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=10995"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=10995"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=10995"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=10995"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}