Hi Shaun, We are actually in the middle of this process and thought we had succeeded until it has come about that our ORACLE instance is setup with latin ISO8859 rather than UTF and believe this is why our import has not worked correctly for our eastern European characters. Everything else is fine. For the moment we have a mixture of western and eastern European characters and had no problem in Postgres.
We used Pentaho for the import (You can download this). We did the following: 1. Create db using the database_schema.sql 2. Disable constraints 3. Import data (We used pentaho and can send you the import schema) 4. Enable constraints 5. reset seunces running script (updated version attached which drops and recreates the sequences and sets them correctly). 6. Move/Copy the assetstore under new DSPACE home directory, no change required. 7. remove null data from metadatavalue, itemsbytitle, itemsbyauthor 8. Run a modified installation of DPSACE which only installs front end and runs indexing on DB without any database setup etc. (modified build.xml attached) Watch out for already raised issue: format the db.url like this in the dspace.cfg: db.url = jdbc:oracle:thin:@//host:port/dspace as opposed to the Install doc which lists: db.url = jdbc.oracle.thin:@//host:port/dspace Hope this helps Gabrielle Horan. ________________________________ From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Shaun Burriss Sent: 26 November 2007 01:08 To: [email protected] Subject: [Dspace-tech] DSpace database migration from Postgres to Oracle Hello DSpace group. We are wanting to move our repository from the Postgres database to an Oracle database, and would like some guidance for this process. We originally had DSpace 1.4.1 and wanted to do this migration, but waited for 1.4.2 as it was said this version had better Oracle support. We would like to get an estimate of how long this process could take, and a general outline of the steps required. At present our idea of this process is to take an SQL dump of the Postgres database and load this dump (with some steps in between?) into Oracle. It is the intermediate steps that we are unsure about. I have heard that we may need some tools, or make some changes to ensure everything loads into Oracle smoothly. Also, we would like to know if any changes to the assets (assetstore) structure would be required? Any help on this would be appreciated. Regards, Shaun. Swinburne University of Technology CRICOS Provider Code: 00111D NOTICE This e-mail and any attachments are confidential and intended only for the use of the addressee. They may contain information that is privileged or protected by copyright. If you are not the intended recipient, any dissemination, distribution, printing, copying or use is strictly prohibited. The University does not warrant that this e-mail and any attachments are secure and there is also a risk that it may be corrupted in transmission. It is your responsibility to check any attachments for viruses or defects before opening them. If you have received this transmission in error, please contact us on +61 3 9214 8000 and delete it immediately from your system. We do not accept liability in connection with computer virus, data corruption, delay, interruption, unauthorised access or unauthorised amendment. Please consider the environment before printing this email.
update-sequences-updated.sql
Description: update-sequences-updated.sql
<?xml version="1.0"?>
<!--
- Copyright (c) 2002, Hewlett-Packard Company and Massachusetts
- Institute of Technology. All rights reserved.
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions are
- met:
-
- - Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- - Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- - Neither the name of the Hewlett-Packard Company nor the name of the
- Massachusetts Institute of Technology nor the names of their
- contributors may be used to endorse or promote products derived from
- this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
- TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
- USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
- DAMAGE.
-->
<!--
- DSpace build file
-
- Version: $Revision: 1533 $
- Date: $Date: 2006-06-30 13:06:03 +0100 (Fri, 30 Jun 2006) $
-->
<project name="DSpace" default="compile">
<!-- ============================================================= -->
<!-- Description -->
<!-- ============================================================= -->
<description>
====================== DSpace platform build file ======================
Common usage:
Fresh install, including database setup and registry loading:
% ant fresh_install
Update existing installation, leaving data and configuration intact:
% ant -Dconfig=/installdir/config/dspace.cfg update
========================================================================
</description>
<!-- ============================================================= -->
<!-- Will be using various environment variables -->
<!-- ============================================================= -->
<property environment="env"/>
<!-- ============================================================= -->
<!-- Build parameters that are likely to need tweaking -->
<!-- ============================================================= -->
<!-- Default configuration to use. This may be overridden. -->
<property name="config" value="config/dspace.cfg" />
<!-- Give user a chance to override without editing this file
(and without typing -D each time s/he compiles it) -->
<property file="${user.home}/.dspace.properties" />
<!-- First, set the dspace.dir property so it can be
interpolated when loading the config file.
This crudely mimics the way ConfigurationManager interpolates properties.
Note that it ONLY works for directories that interpolate ${dspace.dir}
but that _should_ cover all cases used in this build configuration.
-->
<loadproperties srcFile="${config}">
<filterchain>
<linecontainsregexp>
<regexp pattern="^\s*dspace\.dir\s+"/>
</linecontainsregexp>
</filterchain>
</loadproperties>
<!-- Load the configuration -->
<property file="${config}" />
<!-- ============================================================= -->
<!-- The DSpace class path for building -->
<!-- ============================================================= -->
<!-- We will include the environment CLASSPATH -->
<path id="build.class.path">
<pathelement path="${env.CLASSPATH}"/>
<pathelement path="build/classes"/>
<fileset dir="lib">
<include name="**/*.jar"/>
</fileset>
</path>
<!-- ============================================================= -->
<!-- Compile the source code -->
<!-- ============================================================= -->
<target name="compile"
description="Compile the source code">
<mkdir dir="build/classes"/>
<javac srcdir="src"
destdir="build/classes"
debug="on"
source="1.4"
target="1.4">
<include name="**/*.java"/>
<classpath refid="build.class.path"/>
</javac>
</target>
<!-- ============================================================= -->
<!-- Build the .war files -->
<!-- ============================================================= -->
<target name="build_wars"
depends="compile"
description="Build the .war files">
<!-- Build DSpace UI .war -->
<copy file="etc/dspace-web.xml"
tofile="build/dspace-web.xml"
preservelastmodified="true"/>
<replace file="build/dspace-web.xml"
token="@@dspace.dir@@"
value="${dspace.dir}" />
<!-- Make sure jsp/local exists -->
<mkdir dir="jsp/local" />
<!-- Copy original JSPs, then copy localised versions on top -->
<mkdir dir="build/jsp" />
<copy todir="build/jsp" preservelastmodified="true">
<fileset dir="jsp">
<exclude name="local/**" />
</fileset>
</copy>
<copy todir="build/jsp" preservelastmodified="true" overwrite="true">
<fileset dir="jsp/local" />
</copy>
<!-- Copy Messages.properties files -->
<copy todir="build/classes"
preservelastmodified="true">
<fileset dir="config/language-packs">
<include name="Messages*.properties"/>
</fileset>
</copy>
<!-- Build DSpace Web UI .war -->
<war destfile="build/dspace.war"
webxml="build/dspace-web.xml">
<fileset dir="build/jsp" />
<lib dir="lib">
<exclude name="servlet.jar" />
</lib>
<classes dir="build/classes" />
</war>
<!-- Build DSpace OAI-PMH .war -->
<copy file="etc/oai-web.xml"
tofile="build/oai-web.xml"
preservelastmodified="true"/>
<replace file="build/oai-web.xml"
token="@@dspace.dir@@"
value="${dspace.dir}" />
<war destfile="build/dspace-oai.war"
webxml="build/oai-web.xml">
<lib dir="lib">
<exclude name="servlet.jar" />
</lib>
<classes dir="build/classes" />
</war>
</target>
<!-- ============================================================= -->
<!-- Update an installation (except database) -->
<!-- ============================================================= -->
<target name="update"
depends="install_code,build_wars"
description="Update installed code (without clobbering data/config)">
<copy todir="${dspace.dir}/config" preservelastmodified="true">
<fileset dir="config/language-packs"/>
</copy>
<echo>
====================================================================
Copied language packs into ${dspace.dir}/config
====================================================================
Updated Web application (.war) files are in the 'build' directory.
* Stop your Web servlet container (Tomcat, Jetty, Resin etc.)
* If you're using Tomcat, you need delete the directories
corresponding to the old .war files. For example, if dspace.war
is installed in CATALINA_HOME/webapps/dspace.war, you should
delete the CATALINA_HOME/webapps/dspace directory. Otherwise,
Tomcat will continue to use the old code in that directory.
* Copy the new dspace.war and dspace-oai.war from the 'build'
directory over the old ones
* Start up your Web servlet container again.
====================================================================
</echo>
</target>
<!-- ============================================================= -->
<!-- Install or update DSpace code -->
<!-- ============================================================= -->
<target name="install_code"
depends="compile">
<mkdir dir="${dspace.dir}/config" />
<mkdir dir="${assetstore.dir}" />
<mkdir dir="${handle.dir}" />
<mkdir dir="${history.dir}" />
<mkdir dir="${search.dir}" />
<mkdir dir="${log.dir}" />
<mkdir dir="${upload.temp.dir}" />
<mkdir dir="${dspace.dir}/bin"/>
<mkdir dir="${dspace.dir}/lib"/>
<mkdir dir="${report.dir}"/>
<copy todir="${dspace.dir}/bin" preservelastmodified="true">
<fileset dir="bin"/>
</copy>
<chmod dir="${dspace.dir}/bin" perm="u+x" includes="**/*" />
<copy todir="${dspace.dir}/lib" preservelastmodified="true">
<fileset dir="lib" />
</copy>
<jar jarfile="${dspace.dir}/lib/dspace.jar"
basedir="build/classes" />
</target>
<!-- ============================================================= -->
<!-- Fresh install of config files -->
<!-- ============================================================= -->
<!-- Writes the configuration files to ${dspace.dir}/config. It does *not*
run the install-configs script. The "log4j.build.properties" file is
copied to ${dspace.dir}/config so there's a simple log4j.properties
file present for the initial run of "install-configs". -->
<target name="init_configs">
<copy todir="${dspace.dir}/config" preservelastmodified="true">
<fileset dir="config">
<exclude name="language-packs/**"/>
</fileset>
</copy>
<copy todir="${dspace.dir}/config" preservelastmodified="true">
<fileset dir="config/language-packs"/>
</copy>
<copy file="etc/log4j.build.properties"
tofile="${dspace.dir}/config/log4j.properties"
preservelastmodified="true"/>
<copy file="${config}"
tofile="${dspace.dir}/config/dspace.cfg"
preservelastmodified="true" />
</target>
<!-- ============================================================= -->
<!-- Create the database tables -->
<!-- ============================================================= -->
<!-- We execute InitializeDatabase, passing in the simple log4j properties
- file in etc/ and the DSpace configuration file using system
- properties -->
<!--<target name="setup_database"
depends="compile"
description="Create database tables">
<java classname="org.dspace.storage.rdbms.InitializeDatabase"
classpathref="build.class.path"
fork="yes"
failonerror="yes">
<sysproperty key="log4j.configuration" value="file:etc/log4j.build.properties"/>
<sysproperty key="dspace.configuration" value="${config}"/>
<arg value="etc/database_schema.sql"/>
</java>
</target>
-->
<!-- ============================================================= -->
<!-- Remove the database tables -->
<!-- ============================================================= -->
<!-- We execute InitializeDatabase, passing in the simple log4j properties
- file in etc/ and the DSpace configuration file using system
- properties -->
<!--<target name="clean_database"
depends="compile"
description="Removes DSpace database tables, destroying data">
<java classname="org.dspace.storage.rdbms.InitializeDatabase"
classpathref="build.class.path"
fork="yes"
failonerror="yes">
<sysproperty key="log4j.configuration" value="file:etc/log4j.build.properties"/>
<sysproperty key="dspace.configuration" value="${config}"/>
<arg value="etc/clean-database.sql"/>
</java>
</target>
-->
<!-- ============================================================= -->
<!-- Load the initial contents of the registries into the database -->
<!-- ============================================================= -->
<!-- Loads bitstream format and Dublin Core type registries -->
<!--<target name="load_registries"
depends="compile"
description="Load initial contents of registries">
<java classname="org.dspace.administer.RegistryLoader"
classpathref="build.class.path"
fork="yes"
failonerror="yes">
<sysproperty key="log4j.configuration" value="file:etc/log4j.build.properties"/>
<sysproperty key="dspace.configuration" value="${config}"/>
<arg value="-bitstream"/>
<arg value="${dspace.dir}/config/registries/bitstream-formats.xml"/>
</java>
<java classname="org.dspace.administer.RegistryLoader"
classpathref="build.class.path"
fork="yes"
failonerror="yes">
<sysproperty key="log4j.configuration" value="file:etc/log4j.build.properties"/>
<sysproperty key="dspace.configuration" value="${config}"/>
<arg value="-dc"/>
<arg value="${dspace.dir}/config/registries/dublin-core-types.xml"/>
</java>
</target>
-->
<!-- ============================================================= -->
<!-- Do a fresh system install -->
<!-- depends="install_code,build_wars,init_configs,setup_database,load_registries -->
<!-- ============================================================= -->
<target name="fresh_install"
depends="install_code,build_wars,init_configs"
description="Do a fresh install of the system, overwriting any data">
<java classname="org.dspace.core.ConfigurationManager"
classpathref="build.class.path"
fork="yes"
failonerror="yes">
<sysproperty key="log4j.configuration" value="file:etc/log4j.build.properties"/>
<sysproperty key="dspace.configuration" value="${config}"/>
<arg value="-installTemplates"/>
</java>
<java classname="org.dspace.browse.InitializeBrowse"
classpathref="build.class.path"
fork="yes"
failonerror="yes">
<sysproperty key="log4j.configuration" value="file:etc/log4j.build.properties"/>
<sysproperty key="dspace.configuration" value="${config}"/>
</java>
<java classname="org.dspace.search.DSIndexer"
classpathref="build.class.path"
fork="yes"
failonerror="yes">
<sysproperty key="log4j.configuration" value="file:etc/log4j.build.properties"/>
<sysproperty key="dspace.configuration" value="${config}"/>
</java>
<echo>
====================================================================
The DSpace code has been installed, and the database initialized.
To complete installation, you should do the following:
* Install the DSpace UI (dspace.war) and OAI-PMH (dspace-oai.war)
Web applications from the 'build' directory in the appropriate
place for your servlet container. e.g. '/opt/tomcat/webapps'
* Make an initial administrator account (an e-person) in DSpace:
${dspace.dir}/bin/create-administrator
* Start up your servlet container (Tomcat etc.)
You should then be able to access your DSpace's 'home page':
${dspace.url}
You should also be able to access the administrator UI:
${dspace.url}/dspace-admin
====================================================================
</echo>
</target>
<!-- ============================================================= -->
<!-- Clean source code -->
<!-- ============================================================= -->
<target name="clean"
description="Remove compiled files - does not affect installation">
<delete dir="build" />
</target>
<!-- ============================================================= -->
<!-- Create public API javadoc -->
<!-- ============================================================= -->
<target name="public_api"
description="Create the DSpace public API documentation with javadoc">
<mkdir dir="build/public-api" />
<javadoc sourcepath="src"
destdir="build/public-api"
author="true"
version="true"
access="public"
doctitle="DSpace Public API"
windowtitle="DSpace Public API"
bottom="Copyright © 2002 MIT and Hewlett-Packard. All Rights Reserved."
overview="src/overview.html"
classpathref="build.class.path">
<package name="org.dspace.administer"/>
<package name="org.dspace.authorize"/>
<package name="org.dspace.browse"/>
<package name="org.dspace.checker"/>
<package name="org.dspace.content"/>
<package name="org.dspace.content.packager"/>
<package name="org.dspace.content.crosswalk"/>
<package name="org.dspace.core"/>
<package name="org.dspace.eperson"/>
<package name="org.dspace.handle"/>
<package name="org.dspace.history"/>
<package name="org.dspace.search"/>
<package name="org.dspace.storage.bitstore"/>
<package name="org.dspace.storage.rdbms"/>
<package name="org.dspace.workflow"/>
</javadoc>
</target>
<!-- ============================================================= -->
<!-- Create javadoc for everything -->
<!-- ============================================================= -->
<target name="javadoc"
description="Create the DSpace public API documentation with javadoc">
<mkdir dir="build/javadoc" />
<javadoc destdir="build/javadoc"
author="true"
version="true"
doctitle="DSpace Source Javadoc"
windowtitle="DSpace Source Javadoc"
bottom="Copyright © 2002 MIT and Hewlett-Packard. All Rights Reserved."
overview="src/overview.html"
classpathref="build.class.path">
<packageset dir="src">
<include name="**" />
</packageset>
</javadoc>
</target>
</project>
------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________ DSpace-tech mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/dspace-tech

