ข้อผิดพลาดในการเริ่มต้นของ Oracle (ไม่สามารถเปิดไฟล์พารามิเตอร์)


10

ฉันติดตั้งเซิร์ฟเวอร์ Oracle 11g บน Ubuntu 12.10 แต่ฉันไม่สามารถเริ่มเซิร์ฟเวอร์ได้ เมื่อฉันเริ่มเซิร์ฟเวอร์ข้อผิดพลาดต่อไปนี้เกิดขึ้น:

SQL> startup
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/u01/app/oracle/product/11.2.0/xe/dbs/initXE.ora'

ฉันจะแก้ปัญหานี้ได้อย่างไร ฉันคิดว่าการเชื่อมต่อล้มเหลวเนื่องจากไม่มีโฮสต์หรือวัตถุเป้าหมายอยู่ โฮสต์เป้าหมายสามารถระบุได้อย่างไร

วิ่ง:

$ ls -latr /u01/app/oracle/product/11.2.0/xe/dbs/initXE.ora

ผลตอบแทน:

-rw-r--r-- 1 oracle dba 2637 Mar 13 17:07 /u01/app/oracle/product/11.2.0/xe/dbs/initxe.ora 

การวิ่งecho $ORACLE_SIDไม่มีอะไรแสดง - บรรทัดว่าง


ls initXE.orainitxe.oraจะไม่กลับมา Unix คำนึงถึงขนาดตัวพิมพ์
miracle173

คำตอบ:


10

ฉันเห็นสองสิ่งผิดปกติที่นี่ Oracle พยายามเปิดไฟล์พารามิเตอร์ในไดเรกทอรี $ ORACLE_HOME / dbs ด้วยรูปแบบ "spfile" + $ ORACLE_SID + ".ora" หากไม่พบมันก็ลองเปิด "init" + $ ORACLE_SID + ".ora" นี่คือปัญหาที่เกิดขึ้น

จากข้อเท็จจริงที่ว่า Oracle พยายามเปิดไฟล์พารามิเตอร์ชื่อ "initXE.ora" SID ของคุณจะต้องเป็น (หรืออยู่ ณ จุดเดียว) เท่ากับ "XE"

1) นี่เป็นส่วนที่ง่ายดังนั้นให้ลองก่อน เนื่องจาก (ในความคิดเห็นของคุณ) echo $ORACLE_SIDไม่มีผลอะไรเลยให้ลองตั้งค่า

export ORACLE_SID=XE

จากนั้นลองเริ่ม Oracle อีกครั้ง

2) ในความคิดเห็นของคุณด้านบนคุณแสดงไฟล์ชื่อ "initxe.ora" นั่นคือชื่อไฟล์จริงๆเหรอ? หรือวางของคุณลงในความคิดเห็นอย่างใดลดขนาดผลลัพธ์ของlsคำสั่ง?

เหตุผลที่ฉันชี้ให้เห็นนี้ก็คือ Ubuntu (Linux) มีระบบไฟล์เล็ก ดังนั้น initxe.ora และ initXE.ora จึงเป็นสองไฟล์ที่แตกต่างกัน ดังนั้นหากความคิดเห็นของคุณถูกต้องและไฟล์นั้นถูกลดขนาดลงคุณจะต้องตั้งค่า ORACLE_SID เป็น "xe" แทน:

export ORACLE_SID=xe

ลองใช้ดูและดูว่าใช้ได้หรือไม่


6

หากนี่เป็น Oracle ที่ติดตั้งใหม่และคุณไม่มีไฟล์พารามิเตอร์ initXE.ora ที่นี่ /u01/app/oracle/product/11.2.0/xe/dbs/ นั่นหมายความว่าคุณต้องสร้าง XE DB ก่อน ในการทำเช่นนั้นให้เรียกใช้สคริปต์ /u01/app/oracle/product/11.2.0/xe/bin/createdb.sh ก่อน


จุดบนขอบคุณ! สคริปต์ใช้เวลานาน แต่ใช้กลอุบาย คุณจำเป็นต้องเรียกใช้ในฐานะผู้ใช้oracleและโปรดทราบว่านี่หมายความว่าคุณจะต้องรีเซ็ตรหัสผ่านระบบ / sys หลังจากนั้นเช่นกันเมื่อทำสิ่งนี้
อาหาร

1

ฉันเคยประสบปัญหานี้

ฉันรู้ว่าข้อผิดพลาดอาจเกิดจากการไม่พบไฟล์ คุณต้องเริ่มต้นอินสแตนซ์ Oracle โดยใช้ไฟล์อ้างอิงที่สมบูรณ์โดยใช้คำสั่งต่อไปนี้:

SQL> startup pfile=<your pfile full path here>

0

ls -altrเพียงแค่ทำ หากคุณพบสิ่งนี้ ...

-rw-r - r-- 1 oracle oinstall 2637 Mar 13 init.ora

... เพียงแค่เปลี่ยนเจ้าของ: chown -R oracle:dba init.oraจากนั้นเริ่มต้น


-1

ค้นหา "initXE.ora" ในไดเรกทอรี oracle ของคุณและใช้งาน:
SQL> startup pfile=<directory_name>/initXE.ora


คุณอาจต้องการเพิ่มรายละเอียดบางอย่างเกี่ยวกับสาเหตุของการทำงานหรือปัญหาที่เกิดขึ้นจากคำถามของผู้โพสต์ดั้งเดิม
Max Vernon
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.