Bonjour,
J'ai essayé d'effectuer la migration de mon serveur sous linux vers un serveur windows pour y faire des tests.
J'ai donc utilisé RMAN pour faire une conversion de ma base linux vers un windows. Le tout s'est passé sans soucis, j'ai crée les répertoire sous windows, j'ai placé les fichiers là où ils devraient être et j'ai modifié les fichier transportscript et init avec les nouveaux chemins.
Cependant lorsque je lance mon script SQL j'obtiens un nombre d'erreur assez important, dont voici le résumé:
C:\Documents and Settings\admincao>sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on Mer. FÚvr. 22 10:07:32 2012
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL> conn / as sysdba
ConnectÚ Ó une instance inactive.
SQL> @'D:\dump\script\transportscript_final.sql'
Instance ORACLE lancÚe.
Total System Global Area 285212672 bytes
Fixed Size 1248552 bytes
Variable Size 104858328 bytes
Database Buffers 171966464 bytes
Redo Buffers 7139328 bytes
CREATE CONTROLFILE REUSE SET DATABASE "orcl" RESETLOGS ARCHIVELOG
*
ERREUR Ó la ligne 1 :
ORA-01503: echec de CREATE CONTROLFILE
ORA-00200: le fichier de controle n'a pas pu etre cree
ORA-00202: fichier de controle :
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL01.CTL,
D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL02.CTL,
D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL03.CTL'
ORA-27040: erreur lors de la creation du fichier : creation impossible
OSD-04002: ouverture impossible du fichier
O/S-Error: (OS 123) Syntaxe du nom de fichier, de r┐pertoire ou de volume
incorrecte.
ALTER DATABASE OPEN RESETLOGS
*
ERREUR Ó la ligne 1 :
ORA-01507: base de donnees non montee
ALTER TABLESPACE TEMP ADD TEMPFILE 'D:\oracle\product\10.2.0\oradata\orcl\TEMP01
.DBF'
*
ERREUR Ó la ligne 1 :
ORA-01109: base de donnees non ouverte
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* Your database has been created successfully!
* There are many things to think about for the new database. Here
* is a checklist to help you stay on track:
* 1. You may want to redefine the location of the directory objects.
* 2. You may want to change the internal database identifier (DBID)
* or the global database name for this database. Use the
* NEWDBID Utility (nid).
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ORA-01507: base de donnees non montee
Instance ORACLE arrÛtÚe.
Instance ORACLE lancÚe.
Total System Global Area 285212672 bytes
Fixed Size 1248552 bytes
Variable Size 104858328 bytes
Database Buffers 171966464 bytes
Redo Buffers 7139328 bytes
ORA-00205: erreur lors de l'identification du fichier de controle; consultez le
journal des alertes
SQL>
SQL> WHENEVER SQLERROR EXIT;
SQL>
SQL> DOC
DOC>#######################################################################
DOC>#######################################################################
DOC> The following statement will cause an "ORA-01722: invalid number"
DOC> error if there the database was not opened in UPGRADE mode
DOC>
DOC> If you encounter this error, execute "SHUTDOWN", "STARTUP UPGRADE" and
DOC> re-execute utlirp.sql
DOC>#######################################################################
DOC>#######################################################################
DOC>#
SQL> SELECT TO_NUMBER('MUST_BE_OPEN_UPGRADE') FROM v$instance
2 WHERE status != 'OPEN MIGRATE';
SELECT TO_NUMBER('MUST_BE_OPEN_UPGRADE') FROM v$instance
*
ERREUR Ó la ligne 1 :
ORA-01722: Nombre non valide
DÚconnectÚ de Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Produc
tion
With the Partitioning, OLAP and Data Mining options
Voici le contenu de mon fichier transport_final.sql:
-- The following commands will create a new control file and use it
-- to open the database.
-- Data used by Recovery Manager will be lost.
-- The contents of online logs will be lost and all backups will
-- be invalidated. Use this only if online logs are damaged.
-- After mounting the created controlfile, the following SQL
-- statement will place the database in the appropriate
-- protection mode:
-- ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE PERFORMANCE
STARTUP NOMOUNT PFILE='D:\oracle\product\10.2.0\db_1\dbs\init_00n3sipe_1_0_final.ora'
CREATE CONTROLFILE REUSE SET DATABASE "orcl" RESETLOGS ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 292
LOGFILE
GROUP 1 'D:\oracle\product\10.2.0\oradata\orcl\REDO01.LOG' SIZE 50M,
GROUP 2 'D:\oracle\product\10.2.0\oradata\orcl\REDO02.LOG' SIZE 50M,
GROUP 3 'D:\oracle\product\10.2.0\oradata\orcl\REDO03.LOG' SIZE 50M
DATAFILE
'D:\oracle\product\10.2.0\oradata\orcl\system01.dbf',
'D:\oracle\product\10.2.0\oradata\orcl\undotbs01.dbf',
'D:\oracle\product\10.2.0\oradata\orcl\sysaux01.dbf',
'D:\oracle\product\10.2.0\oradata\orcl\users01.dbf',
'D:\oracle\product\10.2.0\oradata\orcl\PTCONTACT.DBF',
'D:\oracle\product\10.2.0\oradata\orcl\INTRAQUALITE.DBF',
'D:\oracle\product\10.2.0\oradata\orcl\SDPFMEASPACE.DBF'
CHARACTER SET WE8ISO8859P1
;
-- Block change tracking was enabled, so re-enable it now.
--ALTER DATABASE ENABLE BLOCK CHANGE TRACKING
--USING FILE '/usr/app/oracle/product/10.2.0/oradata/orcl/blkchg' REUSE;
-- Database can now be opened zeroing the online logs.
ALTER DATABASE OPEN RESETLOGS;
-- Commands to add tempfiles to temporary tablespaces.
-- Online tempfiles have complete space information.
-- Other tempfiles may require adjustment.
ALTER TABLESPACE TEMP ADD TEMPFILE 'D:\oracle\product\10.2.0\oradata\orcl\TEMP01.DBF'
SIZE 26214400 AUTOEXTEND ON NEXT 655360 MAXSIZE 32767M;
-- End of tempfile additions.
--
set echo off
prompt ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
prompt * Your database has been created successfully!
prompt * There are many things to think about for the new database. Here
prompt * is a checklist to help you stay on track:
prompt * 1. You may want to redefine the location of the directory objects.
prompt * 2. You may want to change the internal database identifier (DBID)
prompt * or the global database name for this database. Use the
prompt * NEWDBID Utility (nid).
prompt ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SHUTDOWN IMMEDIATE
STARTUP UPGRADE PFILE='D:\oracle\product\10.2.0\db_1\dbs\init_00n3sipe_1_0_final.ora'
@@ ?/rdbms/admin/utlirp.sql
SHUTDOWN IMMEDIATE
STARTUP PFILE='D:\oracle\product\10.2.0\db_1\dbs\init_00n3sipe_1_0_final.ora'
-- The following step will recompile all PL/SQL modules.
-- It may take serveral hours to complete.
@@ ?/rdbms/admin/utlrp.sql
set feedback 6;
Et mon fichier init:
# Please change the values of the following parameters:
control_files = "D:\oracle\product\10.2.0\oradata\orcl\control01.ctl, D:\oracle\product\10.2.0\oradata\orcl\control02.ctl, D:\oracle\product\10.2.0\oradata\orcl\control03.ctl"
db_recovery_file_dest = "D:\oracle\product\10.2.0\flash_recovery_area\orcl"
db_recovery_file_dest_size= 32212254720
# local_listener = "NEWDBLISTENER_ORCL"
background_dump_dest = "D:\oracle\product\10.2.0\admin\orcl\bdump"
user_dump_dest = "D:\oracle\product\10.2.0\admin\orcl\udump"
core_dump_dest = "D:\oracle\product\10.2.0\admin\orcl\cdump"
audit_file_dest = "D:\oracle\product\10.2.0\admin\orcl\adump"
db_name = "orcl"
# Please review the values of the following parameters:
__shared_pool_size = 88080384
__large_pool_size = 4194304
__java_pool_size = 4194304
__streams_pool_size = 8388608
__db_cache_size = 171966464
remote_login_passwordfile= "EXCLUSIVE"
db_domain = ""
dispatchers = "(PROTOCOL=TCP) (SERVICE=orclXDB)"
# The values of the following parameters are from source database:
processes = 150
sga_target = 285212672
db_block_size = 8192
compatible = "10.2.0.1.0"
db_file_multiblock_read_count= 16
undo_management = "AUTO"
undo_tablespace = "UNDOTBS1"
job_queue_processes = 10
open_cursors = 300
pga_aggregate_target = 94371840
J'ai relu plusieurs fois les tuto ainsi que mes fichier init de mon script et je ne vois pas le problème.
J'espère que quelqu'un sera capable de m'aider.
Partager