Připojil jsem se jako sysdba a zkusil jsem to níže:
SQL> startup; ORA-01506: missing or illegal database name SQL>
Zkoušel jsem několik scénářů, které měnily proměnné Oracle_home a cestu, ale bez štěstí.
Toto jsou mé proměnné env:
c:\>echo %ORACLE_HOME% C:\oraclexe\app\oracle\product\11.2.0\server\ c:\>echo %ORACLE_SID% XE c:\>path PATH=C:\oraclexe\app\oracle\product\11.2.0\server;C:\oraclexe\app\oracle\product \11.2.0\server\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Wi ndows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\ATI Technologies\A TI.ACE\Core-Static;C:\instantclient-basic-windows.x64-11.2.0.4.0\instantclient_1 1_2;C:\Users\DINESH\AppData\Local\Programs\Python\Python37\Scripts\;C:\Users\DIN ESH\AppData\Local\Programs\Python\Python37\
Také jsem se pokusil služby restartovat ručně, ale bez štěstí.
Obsah initXE.ora je:
*.SPFILE="C:\oraclexe\app\oracle\product\11.2.0\server\dbs/spfileXE.ora",*.db_name="XE"
Snažil jsem se :
SQL> create pfile="C:\temp\initXE.ora" from spfile; File created. SQL> create spfile from pfile="C:\temp\initXE.ora"; File created. SQL> startup; ORACLE instance started. Total System Global Area 217157632 bytes Fixed Size 2251776 bytes Variable Size 159384576 bytes Database Buffers 50331648 bytes Redo Buffers 5189632 bytes ORA-00205: error in identifying control file, check alert log for more info
Stále se zobrazuje chyba.
Odpověď
$ oerr ora 1506 01506, 00000, "missing or illegal database name" // *Cause: No db_name INIT.ORA aprameter was specified. // *Action: The database name must be given in the db_name // INIT.ORA parameter.
Vaše ORACLE_SID
je XE
. Když vydáte startup
, váš proces vyhledá soubor %ORACLE_HOME%\database\spfileXE.ora
, nebo pokud neexistuje, pak %ORACLE_HOME%\database\initXE.ora
.
Výše uvedená chyba se zobrazí, když v nich chybí parametr db_name
.
Můžete upravit initXE.ora
pomocí libovolného textového editoru a přidejte chybějící parametr: *.db_name="XE"
. spfile
by se nemělo upravovat přímo, nejprve z něj vytvořte pfile:
create pfile="C:\temp\initXE.ora" from spfile;
Přidejte chybějící parametr do `C : \ temp \ initXE.ora „, poté z něj vytvořte spfile:
create spfile from pfile="C:\temp\initXE.ora";
Poté zkuste startup
znovu.
ORA-00205: chyba v identifikaci kontrolního souboru, další informace najdete v protokolu výstrah
To je úplně jiná chyba, což znamená, že soubory definované v parametru control_files
jsou nepřístupné.
Komentáře
- Takže, jaké by mohlo být řešení pro přístup k souborům control_files?
Odpovědět
Vyhledejte umístění kontrolních souborů (control01.ctl a control02.ctl) v základním adresáři Oracle. vytvořte nový soubor ora myXE.ora (libovolný název je v pořádku) pouze se dvěma řádky
*.db_name="XE" *.control_files="C:\some_directory\control01.ctl","C:\some_directory\control02.ctl"
další spuštění databáze pomocí souboru pfile
startup mount pfile="c:\temp\myXE.ora
Pokud nedojde k chybám z výše uvedeného kroku
alter database open; create spfile from memory;
Pokud výše uvedené kroky nevyřeší vaše problémy, což znamená, že kontrolní soubory chybí nebo jsou poškozeny, musíte kontrolní soubory znovu vytvořit z protokolů výstrah.