ช่วยด้วยครับ ต้องเช็คอะไรตรงไหนอีก
[oracle@PHOEBEORCLDB01 admin]$ sqlplus "/as sysdba"
SQL*Plus: Release 11.2.0.1.0 Production on Wed Dec 3 15:21:54 2014
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to an idle instance.
SQL>
SQL>
SQL>
SQL>
SQL> startup
ORA-00119: invalid specification for system parameter LOCAL_LISTENER
ORA-00132: syntax error or unresolved network name 'LISTENER_WRKLGHT'
SQL>
SQL>
SQL>
SQL> startup
ORA-00119: invalid specification for system parameter LOCAL_LISTENER
ORA-00132: syntax error or unresolved network name 'LISTENER_WRKLGHT'
2014/12/03(Wed) 16:22 Gade รบกวนทุกท่านดูให้น้องตั้มด้วยค่ะ เนื่องจากเป็น V.11.2 เกตุเลยไม่แน่ใจ 16:22 Gade SQL> startup ORA-00119: invalid specification for system parameter LOCAL_LISTENER ORA-00132: syntax error or unresolved network name 'LISTENER_WRKLGHT' 16:23 Gade init.ora.txt 16:23 Gade init.ora.txt 16:23 Gade listener.ora.txt 16:23 Gade listener.ora.txt 16:23 Gade tnsnames.ora.txt 16:23 Gade tnsnames.ora.txt 16:23 Yok sansa ชื่อ listener ใน spfile มันผิดป่าวคะ 16:24 Puinun ตรงไหนครับ 16:24 Yok sansa ใน spfile ของ db 16:25 Yok sansa อ่อๆ เป็น dispatcher หรอ 16:25 Puinun มันมันหลาย instance แนะครับ 16:26 Yok sansa แต่มันรวมใน listener ตัวเดียวกัน 16:26 Puinun ครับ 16:27 Gade http://myotragusbalearicus.wordpress.com/2013/02/13/oracle-11g-release-2ora-00119-invalid-specification-for-system-parameter-local_listener/ 16:28 Gade มันมีเรื่อง .world คือไร งงเลย 16:29 Pitchayasak Spfile? 16:29 Pitchayasak ที่ส่งมามัน pfile 16:29 Gade น้องตั้ม เบส start ด้วย pfile หรือ spfile พอรู้ไหมค่ะ 16:33 Puinun แน่จะ pfile ป่ะครับ 16:33 Pitchayasak ไม่ใช่ file ที่ส่งมา 16:34 Pitchayasak Init WRKGHT.ora 16:34 Pitchayasak ต้องอันนี้ 16:35 Puinun มันอยู่ใน dbs/spfilexxxx 16:35 Puinun ป่าวครับ 16:35 Pitchayasak ใช่ 16:36 Puinun มันเป็นไฟล์ binary ป่าวครับ 16:36 Pitchayasak ใช่ 16:36 Yok sansa ใช่ๆ 16:37 Pitchayasak ส่งมา 16:37 Yok sansa มันสั่ง create pfile from spfile ได้ แต่ไม่ชัวร์ว่าทำตอนที่ db ไม่ได้ start ได้มั้ย 16:40 Puinun ส่งเมล์มให้พีาเกดแล้วครับ 16:40 Puinun ส่งให้คนอีกไหมครับ 16:40 Puinun ขอเมลล์ด้วยคับ 16:41 Gade spfileWRKLGHT.ora 16:41 Gade spfileWRKLGHT.ora 16:41 Pitchayasak แก้เป็น .txt หน่อย 16:41 Pitchayasak มือถือเปิดไม่ได้ 16:42 Gade spfileWRKLGHT.txt 16:42 Gade spfileWRKLGHT.txt 16:45 Pitchayasak Upgrade DB ด้วย DBUA ? 16:45 Puinun ไม่ครับ 16:46 Pitchayasak http://pavandba.com/tag/ora-00132-syntax-error-or-unresolved-network-name-listener_proddb1/ 16:46 Pitchayasak เช็คตามนี้ก่อน 16:49 Pitchayasak มันแปลกๆ 16:49 Pitchayasak Spfile ไม่มีคำว่า local_listener 16:50 Puinun ไปเจอเว็ปนึงบอกให้ลบครับ 16:50 Pitchayasak ลบแล้ว start ได้มั้ย 16:51 Puinun ไม่ได้ครับ 16:51 Pitchayasak Error ว่า 16:51 Puinun SQL> startup ORA-00119: invalid specification for system parameter LOCAL_LISTENER ORA-00132: syntax error or unresolved network name 'LISTENER_WRKLGHT' 16:52 Yok sansa แต่ใน spfile มันไม่มี parameter นี้แล้วนิ 16:52 Yok sansa ลอง start ด้วยการระบุ path ของ spfile ได้มั้ย 16:53 Puinun ขอsyntex หน่อยครับ 16:55 Pitchayasak เอาไฟล์ที่เกตุแก้มาไปไว้ที่ /tmp 16:56 Puinun ครับ 16:56 Pitchayasak Startup pfile=/tmp/spxxx.txt 16:57 Yok sansa 55 ตามนั้น 16:58 Gade เกตุยังไม่ได้ทำไรเลยพี่เต้ -*- 16:58 Gade ไม่กล้าแนะนำ เดียวมั่ว 55 11.2 17:01 Puinun Start ได้อ่ะครับ 17:01 Pitchayasak ก็แค่นั้น 17:01 Puinun สตื๊กเกอร์ 17:01 Pitchayasak Stop ก่อน 17:01 Yok sansa งั้นแปลว่าตอนนั้นมันไปอ่าน spfile ที่อื่น 17:01 Puinun แต่ทำไมstart แบบไม่ระบุ path ไม่ได้ 17:01 Yok sansa ไม่ใช่ file นี้อ่ะซิ 17:02 Pitchayasak cp spfile ใน dbs ออกมา แล้ว rm ของเก่า 17:02 Pitchayasak อย่า mv 17:02 Puinun ครับ 17:03 Pitchayasak หา initWRKGHT.ora แล้วทำแบบเดียวกัน 17:04 Puinun ให้ cp initWRKGHT.ora ไปที่ dbs หรอครับ 17:04 Pitchayasak Start ใหม่ จนกว่าจะ errer ว่า หา pfile ไม่เจอ 17:05 Pitchayasak เอาออกมา 17:05 Pitchayasak เอา init ออกมา 17:05 Puinun ครับ ออกมาแล้วครับ 17:06 Pitchayasak Start ใหม่ จนกว่าจะ errer ว่า หา pfile ไม่เจอ 17:06 Puinun Start แล้วมาบอกหาไฟล์ไม่เจอแล้วครับ 17:07 Pitchayasak แล้วเอา spfile ใหม่ไปวางหรือ ลบ local_listener จาก init 17:07 Puinun รูปภาพ 17:08 Puinun ตัวใหม่? 17:08 Puinun จากไหนครับ 17:08 Pitchayasak แก้ชื่อใน /tmp ให้เป็น sp 17:10 Puinun แก้ initWRKLGHT. > spfileWRKLGHT 17:10 Puinun ใช่ไหมครับ 17:11 Pitchayasak ต้วที่ start สำเร็จน่ะ 17:12 Puinun แล้วต้องแก้ให้จาก .txt เป็น .ora ไหมครับ 17:12 Pitchayasak ใช่ แก้ด้วย 17:15 Puinun Start. ปกติได้แล้วครับ 17:15 Puinun มันเกิดจากอะไรครับ 17:15 Pitchayasak จบ 17:16 Puinun ขอบคุณมากนะครับทุกท่าน
สาเหตุและวิธีป้องกันปัญหา
ปัญหามาจากการที่ oracle พยายามจะ startup ด้วย parameter file ซึ่งมีปัญหาว่ามีคำสั่ง local_listener ถูกเรียกใช้งาน แต่ไม่มีค่านี้ใน spfile และ pfileสิ่งที่ผิดปกติในกรณีนี้ก็คือไม่ควรมี spfile และ pfile ในเวลาเดียวกัน จะทำให้สับสนในการ startup databse ได้ว่าตกลงอันใหนคืออันจริงที่ใช้งาน
สิ่งผิดปกติถัดไปก็คือมี parameter local_listener ที่ไม่ควรจะมี และทำให้ใช้งานไม่ได้
การแก้ไขเบื้องต้นคือ backup pfile/spfile ออกมา แล้ว delete ของเก่าทิ้งทั้งหมดจนกว่าจะ error ว่าหา pfile ไม่เจอ จากนั้นจึงเลือกไฟล์ที่ถูกต้องนำมาแก้ไขและเปิดใช้เป็น spfile ตัวจริง
Appendix
1. ควรสร้าง job backup ตั้ง schedule อย่างต่ำ monthly เพื่อจะได้มีเก็บเอาไว้ว่า pfile หรือ spfile ที่ใช้งานได้
2. ตรวจสอบ $ORACLE_HOME/dbs สม่ำเสมอ อย่าให้มีอะไรแปลกอยู่ในนั้นโดยไม่ได้ตั้งใจ (ไม่ควรมี spfile และ pfile ในเวลาเดียวกัน ยกเว้น pfile ทำ link ไป spfile)
Refference : http://www.dba-oracle.com/concepts/pfile_spfile.htm