之前一直認為oracle例項名大小寫是不區分的,雖然是生產中偶爾遇到oracle_sid改為大寫的問題,但也沒有深究。
昨天由於資料庫伺服器異常重啟,導致資料庫重啟後,遠端連線無法連上,排查問題的時候一直以為是資料庫層面出現了問題。
其實是被監聽資訊誤導了,lsnrctl status可以看到捕獲了例項名資訊,但其實捕獲的時另外乙個例項的資訊,這個例項與我所需的例項的區別就是,名字乙個大寫,乙個小寫。
尤其在監聽靜態註冊的環境中,listener.ora檔案中寫的例項名,要區分大小寫,否則雖然遠端telnet 監聽埠是通的,但依舊會報出資料庫不可用的問題。
之所以會報出資料庫不可用問題,是由於遠端連線通過監聽連到的是另外乙個庫,而該庫沒有啟動或者不存在。。。
總結:以後在處理問題中,注意區分例項名大小寫問題,在監聽層面,動態監聽和靜態監聽很容易混淆例項名問題,尤其當伺服器上存在大小寫不同的資料庫時候。
已經很長時間沒有關注oracle方面的知識了,忙於看些前端方面的玩意,有點懈怠了,給自己提個醒。
關於oracle表名區分大小寫的問題
oracle不是區分大小寫的,是建表的時候是沒有去掉雙引號。create table tablename id number 雖然寫的時候是有大寫和小寫,但是在資料庫裡面是不區分的。select from tablename 這樣是可以的 select from tablename 這樣寫也不會有問...
oracle中關於大小寫問題
個人總結 有時候在操作oracle資料庫的時候,發現很多時候存在 帶雙引號,有時候就不帶,有時候就是單引號。這個就有點兒疑惑。單引號與雙引號在oracle中的作用 單引號代表的是字串。而雙引號之中的表示字段或者表名。關於oracle的大小寫問題 首先關鍵字 如select from 還有一些存在的表...
oracle查詢表名,不區分大小寫
示例 select table name,tablespace name,temporary from user tables where table name like prov 分析 table name 表名 varchar2 30 tablespace name 儲存表名的表空間 varch...