Oracle
 sql >> Database >  >> RDS >> Oracle

Oracle XE 11g il database XE non è stato trovato

Dopo aver lottato con questo problema per quasi una settimana ho trovato una soluzione, come rendere disponibile il database XE da questa fonte . È in russo, fornisco la soluzione proprio qui in inglese.

  1. Installa l'ultima versione di Oracle XE 11gR2 dal sito Oracle nella posizione predefinita c:\oraclexe con password predefinita admin . Se non è predefinito, è necessario modificare gli script di seguito (percorsi e pwd) prima di utilizzarli.

  2. Esegui cmd riga di comando con privilegi di amministratore e utilizzarlo fino alla fine della riconfigurazione. Prima di tutto, imposta le variabili di ambiente per il tuo DB:

    set ORACLE_SID=XE
    set ORACLE_BASE=c:\oraclexe\app\oracle 
    set ORACLE_HOME=c:\oraclexe\app\oracle\product\11.2.0\server
    
  3. Elimina il database XE tramite comando:

    oradim -delete -sid XE
    
  4. Elimina PWDXE.ORA file :

    del %ORACLE_HOME%\database\PWDXE.ORA
    
  5. Copia init.ora da %ORACLE_HOME%\config\scripts a %ORACLE_HOME%\database , invece di esistere, rinominalo in initXE.ora e aggiungi la configurazione di seguito:

    open_cursors=300
    db_name=XE
    control_files=("C:\oraclexe\app\oracle\oradata\XE\control.dbf")
    job_queue_processes=4
    compatible=11.2.0.0.0
    diagnostic_dest=C:\oraclexe\app\oracle\.
    memory_target=1G
    sessions=100
    audit_file_dest=C:\oraclexe\app\oracle\admin\XE\adump
    remote_login_passwordfile=EXCLUSIVE
    dispatchers="(PROTOCOL=TCP) (SERVICE=XEXDB)"
    shared_servers=4
    undo_management=AUTO
    undo_tablespace=UNDOTBS1
    DB_RECOVERY_FILE_DEST_SIZE = 10G
    DB_RECOVERY_FILE_DEST=C:\oraclexe\app\oracle\fast_recovery_area
    #optional
    nls_language="RUSSIAN"
    nls_territory="RUSSIA"
    
  6. Dal precedente cmd line with admin previleges eseguire il comando per creare servizi Oracle e file %ORACLE_HOME%\database\PWDXE.ORA :

    oradim -new -sid %ORACLE_SID% -intpwd admin -startmode auto -srvcstart system
    
  7. Esegui i comandi seguenti per interrompere i servizi Oracle XE di Windows, eliminarli e altri file XE:

    sqlplus /nolog
    connect sys/admin as sysdba;
    shutdown immediate;
    exit;
    del %ORACLE_BASE%\oradata\XE\CONTROL.DBF
    del %ORACLE_BASE%\fast_recovery_area\XE\ONLINELOG\*.LOG
    
  8. Crea due file in una directory:

createXE.cmd

set ORACLE_SID=XE
set NLS_LANG=AMERICAN_AMERICA.CL8MSWIN1251
set ORACLE_BASE=C:\oraclexe\app\oracle
sqlplus /nolog @createXE.sql

createXE.sql

spool %ORACLE_BASE%\admin\XE\CreateXE.log;
connect sys/admin as sysdba;
startup nomount;
CREATE DATABASE XE
LOGFILE GROUP 1 SIZE 51200K,
GROUP 2 SIZE 51200K
MAXINSTANCES 8
MAXLOGHISTORY 1
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
CHARACTER SET CL8MSWIN1251
NATIONAL CHARACTER SET AL16UTF16
DATAFILE 'c:\oraclexe\app\oracle\oradata\XE\system.dbf' SIZE 300M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE 'c:\oraclexe\app\oracle\oradata\XE\sysaux.dbf' SIZE 120M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED
SMALLFILE DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE 'c:\oraclexe\app\oracle\oradata\XE\temp.dbf' SIZE 20M REUSE AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED
SMALLFILE UNDO TABLESPACE UNDOTBS1 DATAFILE 'c:\oraclexe\app\oracle\oradata\XE\undotbs1.dbf' SIZE 200M REUSE AUTOEXTEND ON NEXT 5120K MAXSIZE UNLIMITED;
CREATE SMALLFILE TABLESPACE USERS DATAFILE 'c:\oraclexe\app\oracle\oradata\XE\users.dbf' SIZE 300M REUSE AUTOEXTEND ON NEXT  1280K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT  AUTO;
-- catalog
@%ORACLE_HOME%\rdbms\admin\catalog.sql;
@%ORACLE_HOME%\rdbms\admin\catblock.sql;
@%ORACLE_HOME%\rdbms\admin\catproc.sql;
@%ORACLE_HOME%\rdbms\admin\catoctk.sql;
connect system/manager
-- sqlplus profile
@%ORACLE_HOME%\sqlplus\admin\pupbld.sql;
@%ORACLE_HOME%\sqlplus\admin\help\hlpbld.sql helpus.sql;
connect sys/admin as sysdba;
-- xdb protocol
@%ORACLE_HOME%\rdbms\admin\catqm.sql change_on_install SYSAUX TEMP NO;
@%ORACLE_HOME%\rdbms\admin\catxdbj.sql;
@%ORACLE_HOME%\rdbms\admin\catrul.sql;
-- compiling invalid objects
@%ORACLE_HOME%\rdbms\admin\utlrp.sql;
spool off;
exit;
  1. Esegui createdXE.cmd dalla riga di comando con privilegi di amministratore.

  2. Fatto.