Hi, Marvin, here are my notes for when I cleared out our old development site based on 1.5.1, in preparation for testing an upgrade of our live site to 1.6.2. I'm no DBA, but this procedure worked for me.
I used Oracle's free SQL Developer tool, which is really handy for this kind of thing, and is cross-platform.
First, this thread provided the inspiration:
http://www.dbapool.com/forumthread/topic_14101.html
But after some experimentation, I discovered that I don't have access to the "DBA" prefixed tables. But I do have access to "USER" prefixed tables. So, here are my revisions to the suggested code:
-- DISABLE CONSTRAINTS
-- results in a list of SQL statements, which you can copy/paste into a
-- new SQL script and run (disabling constraints required in order to truncate
-- certain tables
select 'Alter Table'||' '||table_name||' '||'Disable Constraint'||' '||constraint_name||';' from user_constraints ORDER BY TABLE_NAME;
Run that, copy the results, paste, run the results. Same drill for the next two:
-- ENABLE CONSTRAINTS
-- results in a list of SQL statements, which you can copy/paste into a
-- new SQL script and run (enabling constraints)
select 'Alter Table'||' '||table_name||' '||'Enable Constraint'||' '||index_name||';' from user_indexes ORDER BY TABLE_NAME;
-- TRUNCATE TABLES
-- results in a list of SQL statements, which you can copy/paste into a
-- new SQL script and run (truncating all tables)
select 'truncate'||' '||'table'||' '||table_name|| ';' from user_tables;
You'll likely have to run this multiple times (disable constraints, truncate and drop tables, disable more constraints, truncate and drop tables, etc.) until all tables are gone.
Finally, you'll need to drop all your sequences:
select 'drop'||' '||'sequence'||' '||sequence_name|| ';' from user_sequences;
It's not pretty, I bet it could be improved, but this will definitely zero out your database.
Hope that helps.
--Hardy
> [java] at
> org.dspace.storage.rdbms.InitializeDatabase.main(InitializeDatabase.java
> :100)
> [java] 2010-08-31 12:41:30,946 INFO
> org.dspace.core.ConfigurationManager @ Loading system provided config
> property (-Ddspace.configuration): config/dspace.cfg
> [java] 2010-08-31 12:41:30,998 INFO
> org.dspace.core.ConfigurationManager @ Using default log4j provided
> log configuration,if uninitended, check your dspace.cfg for
> (log.init.config)
> [java] 2010-08-31 12:41:33,249 ERROR
> org.dspace.browse.BrowseCreateDAOOracle @ caught exception:
> [java] java.sql.SQLException: ORA-00942: table or view does not
> exist
> [java]
> [java] at
> oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:11
> 2)
> [java] at
> oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
> [java] at
> oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
> [java] at
> oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
> [java] at
> oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.jav
> a:216)
> [java] at
> oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatem
> ent.java:955)
> [java] at
> oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.
> java:1168)
> [java] at
> oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePrepare
> dStatement.java:3316)
> [java] at
> oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedS
> tatement.java:3400)
> [java] at
> org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(Delega
> tingPreparedStatement.java:102)
> [java] at
> org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(Delega
> tingPreparedStatement.java:102)
> [java] at
> org.dspace.storage.rdbms.DatabaseManager.updateQuery(DatabaseManager.jav
> a:460)
> [java] at
> org.dspace.browse.BrowseCreateDAOOracle.dropView(BrowseCreateDAOOracle.j
> ava:491)
> [java] at
> org.dspace.browse.IndexBrowse.clearDatabase(IndexBrowse.java:897)
> [java] at
> org.dspace.browse.IndexBrowse.prepTables(IndexBrowse.java:779)
> [java] at
> org.dspace.browse.IndexBrowse.main(IndexBrowse.java:742)
> [java] 2010-08-31 12:41:33,263 ERROR
> org.dspace.browse.BrowseCreateDAOOracle @ caught exception:
> [java] java.sql.SQLException: ORA-00942: table or view does not
> exist
> [java]
> [java] at
> oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:11
> 2)
> [java] at
> oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
> [java] at
> oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
> [java] at
> oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
> [java] at
> oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.jav
> a:216)
> [java] at
> oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatem
> ent.java:955)
> [java] at
> oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.
> java:1168)
> [java] at
> oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePrepare
> dStatement.java:3316)
> [java] at
> oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedS
> tatement.java:3400)
> [java] at
> org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(Delega
> tingPreparedStatement.java:102)
> [java] at
> org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(Delega
> tingPreparedStatement.java:102)
> [java] at
> org.dspace.storage.rdbms.DatabaseManager.updateQuery(DatabaseManager.jav
> a:460)
> [java] at
> org.dspace.browse.BrowseCreateDAOOracle.dropView(BrowseCreateDAOOracle.j
> ava:491)
> [java] at
> org.dspace.browse.IndexBrowse.clearDatabase(IndexBrowse.java:898)
> [java] at
> org.dspace.browse.IndexBrowse.prepTables(IndexBrowse.java:779)
> [java] at
> org.dspace.browse.IndexBrowse.main(IndexBrowse.java:742)
> [java] 2010-08-31 12:41:35,512 ERROR
> org.dspace.browse.BrowseCreateDAOOracle @ caught exception:
> [java] java.sql.SQLException: ORA-00942: table or view does not
> exist
> [java]
> [java] at
> oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:11
> 2)
> [java] at
> oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
> [java] at
> oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
> [java] at
> oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
> [java] at
> oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.jav
> a:216)
> [java] at
> oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatem
> ent.java:955)
> [java] at
> oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.
> java:1168)
> [java] at
> oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePrepare
> dStatement.java:3316)
> [java] at
> oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedS
> tatement.java:3400)
> [java] at
> org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(Delega
> tingPreparedStatement.java:102)
> [java] at
> org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(Delega
> tingPreparedStatement.java:102)
> [java] at
> org.dspace.storage.rdbms.DatabaseManager.updateQuery(DatabaseManager.jav
> a:460)
> [java] at
> org.dspace.browse.BrowseCreateDAOOracle.dropView(BrowseCreateDAOOracle.j
> ava:491)
> [java] at
> org.dspace.browse.IndexBrowse.clearDatabase(IndexBrowse.java:897)
> [java] at
> org.dspace.browse.IndexBrowse.prepTables(IndexBrowse.java:779)
> [java] at
> org.dspace.browse.IndexBrowse.main(IndexBrowse.java:742)
> [java] 2010-08-31 12:41:35,520 ERROR
> org.dspace.browse.BrowseCreateDAOOracle @ caught exception:
> [java] java.sql.SQLException: ORA-00942: table or view does not
> exist
> [java]
> [java] at
> oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:11
> 2)
> [java] at
> oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
> [java] at
> oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
> [java] at
> oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
> [java] at
> oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.jav
> a:216)
> [java] at
> oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatem
> ent.java:955)
> [java] at
> oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.
> java:1168)
> [java] at
> oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePrepare
> dStatement.java:3316)
> [java] at
> oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedS
> tatement.java:3400)
> [java] at
> org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(Delega
> tingPreparedStatement.java:102)
> [java] at
> org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(Delega
> tingPreparedStatement.java:102)
> [java] at
> org.dspace.storage.rdbms.DatabaseManager.updateQuery(DatabaseManager.jav
> a:460)
> [java] at
> org.dspace.browse.BrowseCreateDAOOracle.dropView(BrowseCreateDAOOracle.j
> ava:491)
> [java] at
> org.dspace.browse.IndexBrowse.clearDatabase(IndexBrowse.java:898)
> [java] at
> org.dspace.browse.IndexBrowse.prepTables(IndexBrowse.java:779)
> [java] at
> org.dspace.browse.IndexBrowse.main(IndexBrowse.java:742)
> [java] 2010-08-31 12:41:36,160 ERROR
> org.dspace.browse.BrowseCreateDAOOracle @ caught exception:
> [java] java.sql.SQLException: ORA-00942: table or view does not
> exist
> [java]
> [java] at
> oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:11
> 2)
> [java] at
> oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
> [java] at
> oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
> [java] at
> oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
> [java] at
> oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.jav
> a:216)
> [java] at
> oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatem
> ent.java:955)
> [java] at
> oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.
> java:1168)
> [java] at
> oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePrepare
> dStatement.java:3316)
> [java] at
> oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedS
> tatement.java:3400)
> [java] at
> org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(Delega
> tingPreparedStatement.java:102)
> [java] at
> org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(Delega
> tingPreparedStatement.java:102)
> [java] at
> org.dspace.storage.rdbms.DatabaseManager.updateQuery(DatabaseManager.jav
> a:460)
> [java] at
> org.dspace.browse.BrowseCreateDAOOracle.dropView(BrowseCreateDAOOracle.j
> ava:491)
> [java] at
> org.dspace.browse.IndexBrowse.dropItemTables(IndexBrowse.java:941)
> [java] at
> org.dspace.browse.IndexBrowse.clearDatabase(IndexBrowse.java:906)
> [java] at
> org.dspace.browse.IndexBrowse.prepTables(IndexBrowse.java:779)
> [java] at
> org.dspace.browse.IndexBrowse.main(IndexBrowse.java:742)
> [java] 2010-08-31 12:41:36,168 ERROR
> org.dspace.browse.BrowseCreateDAOOracle @ caught exception:
> [java] java.sql.SQLException: ORA-00942: table or view does not
> exist
> [java]
> [java] at
> oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:11
> 2)
> [java] at
> oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
> [java] at
> oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
> [java] at
> oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
> [java] at
> oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.jav
> a:216)
> [java] at
> oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatem
> ent.java:955)
> [java] at
> oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.
> java:1168)
> [java] at
> oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePrepare
> dStatement.java:3316)
> [java] at
> oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedS
> tatement.java:3400)
> [java] at
> org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(Delega
> tingPreparedStatement.java:102)
> [java] at
> org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(Delega
> tingPreparedStatement.java:102)
> [java] at
> org.dspace.storage.rdbms.DatabaseManager.updateQuery(DatabaseManager.jav
> a:460)
> [java] at
> org.dspace.browse.BrowseCreateDAOOracle.dropView(BrowseCreateDAOOracle.j
> ava:491)
> [java] at
> org.dspace.browse.IndexBrowse.dropItemTables(IndexBrowse.java:942)
> [java] at
> org.dspace.browse.IndexBrowse.clearDatabase(IndexBrowse.java:906)
> [java] at
> org.dspace.browse.IndexBrowse.prepTables(IndexBrowse.java:779)
> [java] at
> org.dspace.browse.IndexBrowse.main(IndexBrowse.java:742)
> [java] 2010-08-31 12:41:36,522 ERROR
> org.dspace.browse.BrowseCreateDAOOracle @ caught exception:
> [java] java.sql.SQLException: ORA-00942: table or view does not
> exist
> [java]
> [java] at
> oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:11
> 2)
> [java] at
> oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
> [java] at
> oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
> [java] at
> oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
> [java] at
> oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.jav
> a:216)
> [java] at
> oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatem
> ent.java:955)
> [java] at
> oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.
> java:1168)
> [java] at
> oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePrepare
> dStatement.java:3316)
> [java] at
> oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedS
> tatement.java:3400)
> [java] at
> org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(Delega
> tingPreparedStatement.java:102)
> [java] at
> org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(Delega
> tingPreparedStatement.java:102)
> [java] at
> org.dspace.storage.rdbms.DatabaseManager.updateQuery(DatabaseManager.jav
> a:460)
> [java] at
> org.dspace.browse.BrowseCreateDAOOracle.dropView(BrowseCreateDAOOracle.j
> ava:491)
> [java] at
> org.dspace.browse.IndexBrowse.dropItemTables(IndexBrowse.java:941)
> [java] at
> org.dspace.browse.IndexBrowse.clearDatabase(IndexBrowse.java:907)
> [java] at
> org.dspace.browse.IndexBrowse.prepTables(IndexBrowse.java:779)
> [java] at
> org.dspace.browse.IndexBrowse.main(IndexBrowse.java:742)
> [java] 2010-08-31 12:41:36,531 ERROR
> org.dspace.browse.BrowseCreateDAOOracle @ caught exception:
> [java] java.sql.SQLException: ORA-00942: table or view does not
> exist
> [java]
> [java] at
> oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:11
> 2)
> [java] at
> oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
> [java] at
> oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
> [java] at
> oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
> [java] at
> oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.jav
> a:216)
> [java] at
> oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatem
> ent.java:955)
> [java] at
> oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.
> java:1168)
> [java] at
> oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePrepare
> dStatement.java:3316)
> [java] at
> oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedS
> tatement.java:3400)
> [java] at
> org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(Delega
> tingPreparedStatement.java:102)
> [java] at
> org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(Delega
> tingPreparedStatement.java:102)
> [java] at
> org.dspace.storage.rdbms.DatabaseManager.updateQuery(DatabaseManager.jav
> a:460)
> [java] at
> org.dspace.browse.BrowseCreateDAOOracle.dropView(BrowseCreateDAOOracle.j
> ------------------------------------------------------------------------
> ------
> This SF.net Dev2Dev email is sponsored by:
>
> Show off your parallel programming skills.
> Enter the Intel(R) Threading Challenge 2010.
>
http://p.sf.net/sfu/intel-thread-sfd
> _______________________________________________
> DSpace-tech mailing list
>
DSpac...@lists.sourceforge.net
>
https://lists.sourceforge.net/lists/listinfo/dspace-tech