If you have already upgraded to Fedora 2.1b and wish to migrate to the final Fedora 2.1 release, the procedure involves a simple software upgrade which is similar to upgrading from Fedora 2.0. See the instructions in section 2 below for details.
When moving from Fedora 2.0 to Fedora 2.1 you will be able to do a simple software upgrade without having to migrate digital objects via a mass export and ingest. After you install Fedora 2.1, you can configure it to point to your existing repository datastores (both the existing repository directory storage locations and the existing relational database). This involves changing parameters in the Fedora 2.1 server configuration file (fedora.fcfg) that define the storage directory paths and database location. See the instructions in section 3 below for details.
When moving from Fedora Release 1.2.1, you must first migrate to Fedora 2.0. Migration involves using the Fedora migration utility which will export objects from the old repository and ingest them into the new repository. Migration (as opposed to software upgrade) is necessary when either the FOXML schema or the relational database schema changes in a new release. This occurred between Fedora 1.2.1 and Fedora 2.0. See the instructions in section 4 below for migration, then move on the the instructions in section 3.
If you are running a version of the Fedora software prior to version 1.2.1, you will need to migrate your server software up to version 1.2.1 first, and then proceed with the migration from Fedora 1.2.1 to Fedora 2.0. Steps for migrating to Fedora 1.2.1 can be found in the release notes section for Fedora 1.2.1.
The move from Fedora 2.1b to Fedora 2.1 is quite simple and does not require migration of objects or rebuilding of the resource index. There are a number of performance enhancements and bugs fizes made since the 2.1b. Refer to the Fedora 2.1 Release Notes for more details regarding the changes post Fedora 2.1b. If you are upgrading from Fedora 2.1b to Fedora 2.1 follow these steps:
C:\fedora-2.1> fedora-setup no-ssl-authenticate-apim
<param name="object_store_base" value="C:\fedora2_1b_objects"/>
<param name="datastream_store_base" value="C:\fedora2_1b_datastreams"/>
<datastore id="localKowariTriplestore">
<comment>local Kowari Triplestore used by the Resource Index</comment>
<param name="connectorClassName" value="org.trippi.impl.kowari.KowariConnector"/>
<param name="remote" value="false"/>
<param name="path" value="C:\fedora2_1b_resourceIndex"/>
<param name="serverName" value="fedora"/>
<param name="modelName" value="ri"/>
<param name="poolInitialSize" value="3"/>
<param name="poolMaxGrowth" value="-1"/>
<param name="readOnly" value="false"/>
<param name="autoCreate" value="true"/>
<param name="autoTextIndex" value="false"/>
<param name="memoryBuffer" value="true"/>
<param name="autoFlushDormantSeconds" value="5"/>
<param name="autoFlushBufferSize" value="20000"/>
<param name="bufferFlushBatchSize" value="20000"/>
<param name="bufferSafeCapacity" value="40000"/>
</datastore>
<datastore id="localMySQLPool"> <param name="dbUsername" value="fedoraAdmin"/> <param name="dbPassword" value="fedoraAdmin"/> <param name="jdbcURL" value="jdbc:mysql://localhost/fedora21b?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true"/> <param name="jdbcDriverClass" value="com.mysql.jdbc.Driver"/> <param name="ddlConverter" value="fedora.server.utilities.MySQLDDLConverter"/> <param name="maxActive" value="100"/> <param name="maxIdle" value="10"/> <param name="maxWait" value="-1"/> <param name="minIdle" value="0"/> <param name="minEvictableIdleTimeMillis" value="1800000"/> <param name="numTestsPerEvictionRun" value="3"/> <param name="timeBetweenEvictionRunsMillis" value="-1"/> <param name="testOnBorrow" value="true"/> <param name="testOnReturn" value="true"/> <param name="testWhileIdle" value="true"/> <param name="whenExhaustedAction" value="1"/> </datastore>
If you are using Oracle or mckoi as your database, update the appropriate
datastore configuration.
<param name="fedoraServerPort" value="8080">
<comment>Defines the port number on which the Fedora server runs;
default is 8080.</comment>
</param>
<param name="fedoraShutdownPort" value="8005">
<comment>Defines the port number used to shutdown the Fedora sever;
default is 8005.</comment>
</param>
<param name="fedoraRedirectPort" value="8443">
<comment>Defines the redirect port of the Fedora sever; default is
8443.</comment>
</param>
<param name="fedoraServerHost" value="localhost">
<comment>Defines the host name for the Fedora server, as seen from the
outside world.</comment>
</param>
C:\fedora-2.1> fedora-start Starting Fedora server... Deploying API-M and API-A... Processing file c:\fedora-2.1\server\config\deployAPI-A.wsdd <Admin>Done processing</Admin> audit parms deploy audit parms c:\fedora-2.1\server\config\deployAPI-A.wsdd audit parms 60 Processing file c:\fedora-2.1\server\config\deploy.wsdd <Admin>Done processing</Admin> audit parms deploy audit parms c:\fedora-2.1\server\config\deploy.wsdd audit parms 15 Initializing Fedora Server instance... Fedora Version: 2.1 Fedora Build: 1 Server Host Name: localhost Server Port: 8080 Debugging: false log4j.configuration=null OK Finished. To stop the server, use fedora-stop. C:\fedora-2.1>
The move from Fedora 2.0 to Fedora 2.1b is quite simple and does not require migration of objects. If you are upgrading from Fedora 2.0 to Fedora 2.1 follow these steps:
C:\fedora-2.1-src> fedora-setup no-ssl-authenticate-apim
<param name="object_store_base" value="C:\fedora2_0_objects"/>
<param name="datastream_store_base" value="C:\fedora2_0_datastreams"/>
<datastore id="localMySQLPool"> <param name="dbUsername" value="fedoraAdmin"/> <param name="dbPassword" value="fedoraAdmin"/> <param name="jdbcURL" value="jdbc:mysql://localhost/fedora20?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true"/> <param name="jdbcDriverClass" value="com.mysql.jdbc.Driver"/> <param name="ddlConverter" value="fedora.server.utilities.MySQLDDLConverter"/> <param name="maxActive" value="100"/> <param name="maxIdle" value="10"/> <param name="maxWait" value="-1"/> <param name="minIdle" value="0"/> <param name="minEvictableIdleTimeMillis" value="1800000"/> <param name="numTestsPerEvictionRun" value="3"/> <param name="timeBetweenEvictionRunsMillis" value="-1"/> <param name="testOnBorrow" value="true"/> <param name="testOnReturn" value="true"/> <param name="testWhileIdle" value="true"/> <param name="whenExhaustedAction" value="1"/> </datastore>
If you are using Oracle or mckoi as your database, update the appropriate
datastore configuration.
<param name="fedoraServerPort" value="8080">
<comment>Defines the port number on which the Fedora server runs;
default is 8080.</comment>
</param>
<param name="fedoraShutdownPort" value="8005">
<comment>Defines the port number used to shutdown the Fedora sever;
default is 8005.</comment>
</param>
<param name="fedoraRedirectPort" value="8443">
<comment>Defines the redirect port of the Fedora sever; default is
8443.</comment>
</param>
<param name="fedoraServerHost" value="localhost">
<comment>Defines the host name for the Fedora server, as seen from the
outside world.</comment>
</param>
C:\fedora-2.1-src> fedora-rebuildFedora Rebuild Utility .......................... WARNING: Live rebuilds are not currently supported. Make sure your server is stopped before continuing. Server directory is c:\fedora-2.1-src\dist\server Server profile is unspecified --------------------------------------------------------------------- What do you want to do? 1) Test the rebuilder interface. 2) Rebuild the Resource Index. 3) Rebuild SQL database. 4) Exit Enter (1-4) --> 2 Rebuild the Resource Index. Start rebuilding with the above options? 1) Yes 2) No, let me re-enter the options. 3) No, exit. Enter (1-3) --> 1 Rebuilding...
C:\fedora-2.1-src> fedora-start Starting Fedora server... Deploying API-M and API-A... Processing file c:\fedora-2.1-src\dist\server\config\deployAPI-A.wsdd <Admin>Done processing</Admin> audit parms deploy audit parms c:\fedora-2.1-src\dist\server\config\deployAPI-A.wsdd audit parms 60 Processing file c:\fedora-2.1-src\dist\server\config\deploy.wsdd <Admin>Done processing</Admin> audit parms deploy audit parms c:\fedora-2.1-src\dist\server\config\deploy.wsdd audit parms 15 Initializing Fedora Server instance... Fedora Version: 2.1 Fedora Build: 1 Server Host Name: localhost Server Port: 8080 Debugging: false log4j.configuration=null OK Finished. To stop the server, use fedora-stop. C:\fedora-2.1-src>
If you are upgrading from Fedora 1.2.1 to Fedora 2.0 follow these steps:
DO NOT APPLY THIS PATCH TO ANY OTHER VERSION OF FEDORA!
To check your repository's version, check the "describe" page. For instance, if you're running Fedora on localhost:8080, visit http://localhost:8080/fedora/describe
Under Windows, make a backup of the following file:
%FEDORA_HOME%\server\tomcat41\webapps\fedora\WEB-INF\classes\fedora\server\storage\translation\METSLikeExportDOSerializer.class
Under Unix, make a backup of the following file:
$FEDORA_HOME/server/tomcat41/webapps/fedora/WEB-INF/classes/fedora/server/storage/translation/METSLikeExportDOSerializer.class
Under Windows, copy the METSLikeExportDOSerializer.class from patch into the following directory
%FEDORA_HOME%\server\tomcat41\webapps\fedora\WEB-INF\classes\fedora\server\storage\translation
OVER THE EXISTING FILE.
Under Unix, copy the METSLikeExportDOSerializer.class from patch into the following directory
$FEDORA_HOME/server/tomcat41/webapps/fedora/WEB-INF/classes/fedora/server/storage/translation
OVER THE EXISTING FILE.
Under Windows, copy the METSLikeExportDOSerializer.java file from the patch into the following directory
%FEDORA_HOME%\src\java\fedora\server\storage\translation
OVER THE EXISTING FILE.
Under Unix, copy the METSLikeExportDOSerializer.java file from the patch into the following directory
$FEDORA_HOME/src/java/fedora/server/storage/translation
OVER THE EXISTING FILE.
Under Windows, this file is found in:
%FEDORA_HOME%\client\bin\fedora-ingest.bat
Under Unix, this file is found in:
$FEDORA_HOME/client/bin/fedora-ingest.sh
For example:
fedora-ingest r src-host:src-port fedoraAdmin fedoraAdmin DMO dest-host:dest-port fedoraAdmin fedoraAdmin ""