今天一個同事遇到了一個oracle問題,在數據庫本機通過sqlplus登錄sys用戶時報TNS-12532: TNS:invalid argument,這個錯誤。
造成這個錯誤的原因主要有三個,一般排查這三個原因都可以解決。
1、tnsnames.ora配置文件中格式有誤,導致無法識別TNS name;
這種情況可以通過tnsping “TNS name”查看,觀察結果是否能解析出來相應的名稱。
2、服務器防火牆問題,限制了對1521端口的連接;
這種情況可以通過在報錯的客戶端上,通過telnet來連接1521端口,看是否可以連通。
對於以上兩種情況,可具體參見這篇博文。
3、還有一種情況就是sys密碼中帶有“@”符號或其他特殊符號,這也是我遇到的情況,可以通過給密碼加上 雙引號解決。