{"id":83622,"date":"2018-11-16T16:00:31","date_gmt":"2018-11-16T14:00:31","guid":{"rendered":"https:\/\/www.javacodegeeks.com\/?p=83622"},"modified":"2018-11-15T12:45:43","modified_gmt":"2018-11-15T10:45:43","slug":"derby-database-backup","status":"publish","type":"post","link":"https:\/\/www.javacodegeeks.com\/2018\/11\/derby-database-backup.html","title":{"rendered":"Derby Database Backup"},"content":{"rendered":"<h2>Abstract<\/h2>\n<p>I have already posted a number of blogs about Derby:<\/p>\n<ul>\n<li><a title=\"Multiple Derby Network Servers on the same Host\" href=\"https:\/\/mjremijan.blogspot.com\/2018\/08\/multiple-derby-network-servers-on-same.html\">Multiple Derby Network Servers on the same Host<\/a><\/li>\n<li><a title=\"Apache Derby Database Users and Permissions\" href=\"https:\/\/www.javacodegeeks.com\/2018\/05\/apache-derby-database-users-and-permissions.html\">Apache Derby Database Users and Permissions<\/a><\/li>\n<li><a title=\"Integration Testing with Maven and an In-Memory Derby Database\" href=\"https:\/\/mjremijan.blogspot.com\/2014\/03\/integration-testing-with-maven-and-in.html\">Integration Testing with Maven and an In-Memory Derby Database<\/a><\/li>\n<\/ul>\n<p>This wasn\u2019t intended to be a series. But over the years I\u2019ve been using Derby more and more. Recently, I started using Derby as my database of choice for my Microservice architecture. These are personal-use applications, so Derby is more than sufficient. Even though these are personal-use applications, I require <a title=\"Multiple Derby Network Servers on the same Host\" href=\"https:\/\/mjremijan.blogspot.com\/2018\/08\/multiple-derby-network-servers-on-same.html\">multiple servers<\/a> with <a title=\"Apache Derby Database Users and Permissions\" href=\"https:\/\/mjremijan.blogspot.com\/2018\/05\/apache-derby-database-users-and.html\">limited user permissions<\/a> and &#8211; most importantly &#8211; backup. I\u2019d hate to lose my data! The purpose of this post is to demonstrate how to backup a Derby database.<\/p>\n<h2>Disclaimer<\/h2>\n<p>This post is solely informative. Critically think before using any information presented. Learn from it but ultimately make your own decisions at your own risk.<\/p>\n<h2>Requirements<\/h2>\n<p>I did all of the work for this post using the following major technologies. You may be able to do the same thing with different technologies or versions, but no guarantees.<\/p>\n<ul>\n<li><a href=\"https:\/\/db.apache.org\/derby\/derby_downloads.html\">Apache Derby<\/a> 10.14.2.0<\/li>\n<li>OpenJDK 64-Bit Server VM <a href=\"https:\/\/www.azul.com\/downloads\/zulu\/\">Zulu<\/a>11.1+23 (build 11-ea+22, mixed mode)<\/li>\n<\/ul>\n<h2>Download<\/h2>\n<p>There are no downloads with this blog post. The scripts are shown in full.<div style=\"display:inline-block; margin: 15px 0;\"> <div id=\"adngin-JavaCodeGeeks_incontent_video-0\" style=\"display:inline-block;\"><\/div> <\/div><\/p>\n<h2>Derby System Utility<\/h2>\n<p>Backing up a Derby database is really quite simple. Derby has a built-in system utility for performing the backup. The utility is <code>SYSCS_UTIL.SYSCS_BACKUP_DATABASE('\/location\/of\/the\/backup\/')<\/code>. When called, Derby will lock the database and perform the copy operation to the file system location you specify as the parameter to <code>SYSCS_BACKUP_DATABASE<\/code>. Now that we know the system utility to do the backup, let\u2019s look at a bash script to automate it.<\/p>\n<h2>Backup Script<\/h2>\n<p>Listing 1 is a bash script which can be easily modified to backup any Derby database on any network server.<\/p>\n<h2>Listing 1 &#8211; derby-mydatabase-backup.sh<\/h2>\n<pre class=\"brush:java\">#!\/bin\/bash\r\n\r\n# Define a bunch of variables which will be used within this script.\r\n# The names of the variables should be self-explanatory.\r\nDERBY_HOME=\/opt\/db-derby-10.14.2.0-bin\/\r\nNETWORK_SERVER_HOST=localhost\r\nNETWORK_SERVER_PORT=1527\r\nDATABASE_NAME=mydatabase\r\nDATABASE_USER=sa\r\nDATABASE_PASSWORD=abc123\r\nJDBC_URL=\"jdbc:derby:\/\/$NETWORK_SERVER_HOST:$NETWORK_SERVER_PORT\/$DATABASE_NAME\"\r\nBACKUP_DIRECTORY=\"\/tmp\/$DATABASE_NAME-backup\/$NETWORK_SERVER_PORT\"\r\nBACKUP_SCRIPT=\"$BACKUP_DIRECTORY\/backup.sql\"\r\n\r\n# Remove old backup if it exists. It is not a good idea to\r\n# perform a backup on top of an existing backup.\r\nrm -rf $BACKUP_DIRECTORY\r\nmkdir -p $BACKUP_DIRECTORY\r\ncd $BACKUP_DIRECTORY\r\n\r\n# Use the `echo` command to dynamically create an SQL file.\r\n# This SQL file will be used by Derby `ij` to connect to\r\n# the database and perform the backup.\r\necho \"connect '$JDBC_URL' user '$DATABASE_USER' password '$DATABASE_PASSWORD';\" &gt;&gt; $BACKUP_SCRIPT\r\necho \"CALL SYSCS_UTIL.SYSCS_BACKUP_DATABASE('$BACKUP_DIRECTORY');\" &gt;&gt; $BACKUP_SCRIPT\r\necho \"exit;\" &gt;&gt; $BACKUP_SCRIPT\r\n\r\n# Run the Derby `ij` application, passing it the SQL file\r\n# that was just dynamically created. `ij` will read the \r\n# SQL file, executing its commands. This will then\r\n# cause `ij` to connect to the database and call the \r\n# system utility to perform the backup.\r\n$DERBY_HOME\/bin\/ij $BACKUP_SCRIPT<\/pre>\n<p>Let\u2019s take a look at this script in more detail.<\/p>\n<p>Lines 5\u201315 setup a number of variables used within the script. Some variables are used to set the values of other variables. There is nothing too complicated here. The names of the variables are self-explanatory.<\/p>\n<p>Lines 17\u201319 is file system maintenance. It is not a good idea to perform a backup on top of an existing backup. So these lines remove an existing backup (if it exists) and creates a new, empty, backup directory.<\/p>\n<p>Lines 24\u201326 are then responsible for creating the <code>backup.sql<\/code> script file. This script file contains the SQL commands to perform the backup. Line 24 is the <code>connect<\/code> command so Derby <code>ij<\/code> can connect to the database you want to backup. Line 25 is where the magic happens with a call to the <code>SYSCS_BACKUP_DATABASE<\/code> system utility. The location of the backup directory is passed as a parameter to the utility. When this SQL command is executed, Derby will lock the database and perform the backup. Line 26 is the <code>exit<\/code> command to exit <code>ij<\/code>.<\/p>\n<p>Line 33 is then finally where everything happens. The Derby <code>ij<\/code> command is called with the location of the dynamically created <code>backup.sql<\/code> file passed to <code>ij<\/code> as a command-line parameter. When bash executes line 33, and if everything goes well, the Derby database will be backed up.<\/p>\n<blockquote>\n<p><strong>NOTE<\/strong> If you are running the Derby network server with a Java security policy, you may run into some problems with this script. the Java SecurityManager may prevent the network connection to the database or the SecurityManager my encounter permission problems writing to the backup directory.<\/p>\n<\/blockquote>\n<h2>Summary<\/h2>\n<p>Backing up a Derby database is pretty easy. Just call <code>SYSCS_UTIL.SYSCS_BACKUP_DATABASE('\/location\/of\/the\/backup\/')<\/code>.<\/p>\n<h2>References<\/h2>\n<p>Backing Up a Database. (2013, January 24). db.apache.org. Retrieved from <a href=\"https:\/\/db.apache.org\/derby\/docs\/10.0\/manuals\/admin\/hubprnt43.html\">https:\/\/db.apache.org\/derby\/docs\/10.0\/manuals\/admin\/hubprnt43.html<\/a>.<\/p>\n<div class=\"attribution\">\n<table>\n<tbody>\n<tr>\n<td>Published on Java Code Geeks with permission by Michael Remijan, partner at our <a href=\"\/\/www.javacodegeeks.com\/join-us\/jcg\/\" target=\"_blank\" rel=\"noopener\">JCG program<\/a>. See the original article here: <a href=\"http:\/\/mjremijan.blogspot.com\/2018\/11\/derby-database-backup.html\" target=\"_blank\" rel=\"noopener\">Derby Database Backup<\/a><\/p>\n<p>Opinions expressed by Java Code Geeks contributors are their own.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Abstract I have already posted a number of blogs about Derby: Multiple Derby Network Servers on the same Host Apache Derby Database Users and Permissions Integration Testing with Maven and an In-Memory Derby Database This wasn\u2019t intended to be a series. But over the years I\u2019ve been using Derby more and more. Recently, I started &hellip;<\/p>\n","protected":false},"author":3178,"featured_media":112,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8],"tags":[428,671],"class_list":["post-83622","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-enterprise-java","tag-database","tag-derby"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Derby Database Backup - Java Code Geeks<\/title>\n<meta name=\"description\" content=\"Interested to learn about Derby Database? Check our article explaining how easy is the process of backing up a Derby database.\" \/>\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.javacodegeeks.com\/2018\/11\/derby-database-backup.html\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Derby Database Backup - Java Code Geeks\" \/>\n<meta property=\"og:description\" content=\"Interested to learn about Derby Database? Check our article explaining how easy is the process of backing up a Derby database.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.javacodegeeks.com\/2018\/11\/derby-database-backup.html\" \/>\n<meta property=\"og:site_name\" content=\"Java Code Geeks\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/javacodegeeks\" \/>\n<meta property=\"article:published_time\" content=\"2018-11-16T14:00:31+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"150\" \/>\n\t<meta property=\"og:image:height\" content=\"150\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Michael Remijan\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:site\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Michael Remijan\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2018\\\/11\\\/derby-database-backup.html#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2018\\\/11\\\/derby-database-backup.html\"},\"author\":{\"name\":\"Michael Remijan\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/29887059c051a7f738ae776d5aba9e27\"},\"headline\":\"Derby Database Backup\",\"datePublished\":\"2018-11-16T14:00:31+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2018\\\/11\\\/derby-database-backup.html\"},\"wordCount\":619,\"commentCount\":1,\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2018\\\/11\\\/derby-database-backup.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/enterprise-java-logo.jpg\",\"keywords\":[\"Database\",\"Derby\"],\"articleSection\":[\"Enterprise Java\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/2018\\\/11\\\/derby-database-backup.html#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2018\\\/11\\\/derby-database-backup.html\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2018\\\/11\\\/derby-database-backup.html\",\"name\":\"Derby Database Backup - Java Code Geeks\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2018\\\/11\\\/derby-database-backup.html#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2018\\\/11\\\/derby-database-backup.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/enterprise-java-logo.jpg\",\"datePublished\":\"2018-11-16T14:00:31+00:00\",\"description\":\"Interested to learn about Derby Database? Check our article explaining how easy is the process of backing up a Derby database.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2018\\\/11\\\/derby-database-backup.html#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/2018\\\/11\\\/derby-database-backup.html\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2018\\\/11\\\/derby-database-backup.html#primaryimage\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/enterprise-java-logo.jpg\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/enterprise-java-logo.jpg\",\"width\":150,\"height\":150,\"caption\":\"java-interview-questions-answers\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2018\\\/11\\\/derby-database-backup.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Java\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/category\\\/java\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Enterprise Java\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/category\\\/java\\\/enterprise-java\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Derby Database Backup\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"name\":\"Java Code Geeks\",\"description\":\"Java Developers Resource Center\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"alternateName\":\"JCG\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.javacodegeeks.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\",\"name\":\"Exelixis Media P.C.\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"width\":864,\"height\":246,\"caption\":\"Exelixis Media P.C.\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/javacodegeeks\",\"https:\\\/\\\/x.com\\\/javacodegeeks\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/29887059c051a7f738ae776d5aba9e27\",\"name\":\"Michael Remijan\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/660a324990ecdd382c28c15ae952984b3157b2bc7ad8524692f52f516b155954?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/660a324990ecdd382c28c15ae952984b3157b2bc7ad8524692f52f516b155954?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/660a324990ecdd382c28c15ae952984b3157b2bc7ad8524692f52f516b155954?s=96&d=mm&r=g\",\"caption\":\"Michael Remijan\"},\"description\":\"Michael Remijan is a System Architect at the Federal Reserve Bank St. Louis. He is co-author of 'EJB 3 In Action Second', an active blogger in the Java EE community, a Java EE Guardian, and JavaOne presenter. He has developed enterprise systems for B2C and B2B commerce, manufacturing, astronomy, agriculture, telecommunications, national defense, healthcare, and financial areas.\",\"sameAs\":[\"http:\\\/\\\/mjremijan.blogspot.gr\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/mjremijan\\\/\"],\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/author\\\/michael-remijan\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Derby Database Backup - Java Code Geeks","description":"Interested to learn about Derby Database? Check our article explaining how easy is the process of backing up a Derby database.","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.javacodegeeks.com\/2018\/11\/derby-database-backup.html","og_locale":"en_US","og_type":"article","og_title":"Derby Database Backup - Java Code Geeks","og_description":"Interested to learn about Derby Database? Check our article explaining how easy is the process of backing up a Derby database.","og_url":"https:\/\/www.javacodegeeks.com\/2018\/11\/derby-database-backup.html","og_site_name":"Java Code Geeks","article_publisher":"https:\/\/www.facebook.com\/javacodegeeks","article_published_time":"2018-11-16T14:00:31+00:00","og_image":[{"width":150,"height":150,"url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","type":"image\/jpeg"}],"author":"Michael Remijan","twitter_card":"summary_large_image","twitter_creator":"@javacodegeeks","twitter_site":"@javacodegeeks","twitter_misc":{"Written by":"Michael Remijan","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.javacodegeeks.com\/2018\/11\/derby-database-backup.html#article","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/2018\/11\/derby-database-backup.html"},"author":{"name":"Michael Remijan","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/29887059c051a7f738ae776d5aba9e27"},"headline":"Derby Database Backup","datePublished":"2018-11-16T14:00:31+00:00","mainEntityOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/2018\/11\/derby-database-backup.html"},"wordCount":619,"commentCount":1,"publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/2018\/11\/derby-database-backup.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","keywords":["Database","Derby"],"articleSection":["Enterprise Java"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.javacodegeeks.com\/2018\/11\/derby-database-backup.html#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.javacodegeeks.com\/2018\/11\/derby-database-backup.html","url":"https:\/\/www.javacodegeeks.com\/2018\/11\/derby-database-backup.html","name":"Derby Database Backup - Java Code Geeks","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/2018\/11\/derby-database-backup.html#primaryimage"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/2018\/11\/derby-database-backup.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","datePublished":"2018-11-16T14:00:31+00:00","description":"Interested to learn about Derby Database? Check our article explaining how easy is the process of backing up a Derby database.","breadcrumb":{"@id":"https:\/\/www.javacodegeeks.com\/2018\/11\/derby-database-backup.html#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.javacodegeeks.com\/2018\/11\/derby-database-backup.html"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/2018\/11\/derby-database-backup.html#primaryimage","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","width":150,"height":150,"caption":"java-interview-questions-answers"},{"@type":"BreadcrumbList","@id":"https:\/\/www.javacodegeeks.com\/2018\/11\/derby-database-backup.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.javacodegeeks.com\/"},{"@type":"ListItem","position":2,"name":"Java","item":"https:\/\/www.javacodegeeks.com\/category\/java"},{"@type":"ListItem","position":3,"name":"Enterprise Java","item":"https:\/\/www.javacodegeeks.com\/category\/java\/enterprise-java"},{"@type":"ListItem","position":4,"name":"Derby Database Backup"}]},{"@type":"WebSite","@id":"https:\/\/www.javacodegeeks.com\/#website","url":"https:\/\/www.javacodegeeks.com\/","name":"Java Code Geeks","description":"Java Developers Resource Center","publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"alternateName":"JCG","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.javacodegeeks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.javacodegeeks.com\/#organization","name":"Exelixis Media P.C.","url":"https:\/\/www.javacodegeeks.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","width":864,"height":246,"caption":"Exelixis Media P.C."},"image":{"@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/javacodegeeks","https:\/\/x.com\/javacodegeeks"]},{"@type":"Person","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/29887059c051a7f738ae776d5aba9e27","name":"Michael Remijan","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/660a324990ecdd382c28c15ae952984b3157b2bc7ad8524692f52f516b155954?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/660a324990ecdd382c28c15ae952984b3157b2bc7ad8524692f52f516b155954?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/660a324990ecdd382c28c15ae952984b3157b2bc7ad8524692f52f516b155954?s=96&d=mm&r=g","caption":"Michael Remijan"},"description":"Michael Remijan is a System Architect at the Federal Reserve Bank St. Louis. He is co-author of 'EJB 3 In Action Second', an active blogger in the Java EE community, a Java EE Guardian, and JavaOne presenter. He has developed enterprise systems for B2C and B2B commerce, manufacturing, astronomy, agriculture, telecommunications, national defense, healthcare, and financial areas.","sameAs":["http:\/\/mjremijan.blogspot.gr\/","https:\/\/www.linkedin.com\/in\/mjremijan\/"],"url":"https:\/\/www.javacodegeeks.com\/author\/michael-remijan"}]}},"_links":{"self":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/83622","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/users\/3178"}],"replies":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/comments?post=83622"}],"version-history":[{"count":0,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/83622\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media\/112"}],"wp:attachment":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media?parent=83622"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/categories?post=83622"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/tags?post=83622"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}