TNS-03505 名称无法解析
TNS-03505 名称无法解析 问题现象: [Oracle@db01 admin]$ tnsping pri TNS Ping Utility for Linux: Version 11.2.0.4.0 - Prod
TNS-03505 名称无法解析
问题现象:
[Oracle@db01 admin]$ tnsping pri
TNS Ping Utility for Linux: Version 11.2.0.4.0 - Production on 15-JUN-2015 21:57:52
Copyright (c) 1997, 2013, Oracle. All rights reserved.
Used parameter files:
TNS-03505: Failed to resolve name
[oracle@db01 admin]$ sqlplus system/oracle@pri
SQL*Plus: Release 11.2.0.4.0 Production on Mon Jun 15 21:58:48 2015
Copyright (c) 1982, 2013, Oracle. All rights reserved.
ERROR:
ORA-12154: TNS:could not resolve the connect identifier specified
Enter user-name: ^C
问题分析:
出现该问题的原因通常有两个:1、名称不存在 2、tns配置文件不存在。
问题处理:
1、首先检查tnsnames.ora的所有配置信息,一切正常没有任何问题。
[oracle@db01 admin]$ cat tnsname.ora
pri =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.50)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = woo)
)
)
2、检查tnsnames.ora的文件及文件所属用户及用户组
[oracle@db01 admin]$ ll tnsnames.ora
-rwxr--r-- 1 oracle oinstall 350 Jun 16 22:04 tnsname.ora
#从这里来看也是没有问题,文件是属于oinstall用户组,及其所有权限也是Oracle
3、那么这个时候我们选择跳过tnsnames.ora通过手工登陆进行验证数据库是否正常
[oracle@db01 admin]$ sqlplus system/oracle@192.168.1.50/woo
SQL*Plus: Release 11.2.0.4.0 Production on Tue Jun 16 22:34:40 2015
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - Production
With the Partitioning, Oracle Label Security, OLAP, Data Mining,
Oracle Database Vault and Real Application Testing options
SQL> select name from v$database;
NAME
---------
WOO
SQL> select instance_name,status from v$instance;
INSTANCE_NAME STATUS
---------------- ------------
woo OPEN
SQL>
#从这里我们可以看到,数据库肯定是没有问题的,那么下一步我们通过拿一个好的监听文件替换这个监听文件来处理该问题。
4、通过上传一个之前可用的监听配置文件进行对比
[oracle@db01 admin]$ ls
listener.ora samples shrept.lst sqlnet.ora tnsname.ora tnsnames.ora
[oracle@db01 admin]$ chmod u+x tnsnames.ora
[oracle@db01 admin]$ ll
total 24
-rwxr-xr-x 1 oracle oinstall 711 Jun 16 22:08 listener.ora
drwxr-xr-x 2 oracle oinstall 4096 Jun 11 21:56 samples
-rw-r--r-- 1 oracle oinstall 381 Dec 17 2012 shrept.lst
-rw-r--r-- 1 oracle oinstall 221 Jun 16 21:59 sqlnet.ora
-rwxr--r-- 1 oracle oinstall 350 Jun 16 22:31 tnsname.ora
-rwxr--r-- 1 oracle oinstall 350 Jun 16 22:04 tnsnames.ora ----这个是后面上传的
#通过对比,我发现之前手工些的那个文件名称不对,即使里面内容正确也无济于事。
5、通过修改替换监听文件,该问题得到解决:
[oracle@db01 admin]$ cat tnsname.ora > tnsnames.ora
[oracle@db01 admin]$ rm -rf tnsname.ora
[oracle@db01 admin]$ sqlplus system/oracle@pri
SQL*Plus: Release 11.2.0.4.0 Production on Tue Jun 16 23:02:15 2015
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - Production
With the Partitioning, Oracle Label Security, OLAP, Data Mining,
Oracle Database Vault and Real Application Testing options
SQL> select name from v$database;
NAME
---------
WOO
SQL> select instance_name,status from v$instance;
INSTANCE_NAME STATUS
---------------- ------------
woo OPEN
SQL>
SQL> host ls -rtl
total 20
-rw-r--r-- 1 oracle oinstall 381 Dec 17 2012 shrept.lst
drwxr-xr-x 2 oracle oinstall 4096 Jun 11 21:56 samples
-rw-r--r-- 1 oracle oinstall 221 Jun 16 21:59 sqlnet.ora
-rwxr-xr-x 1 oracle oinstall 711 Jun 16 22:08 listener.ora
-rwxr--r-- 1 oracle oinstall 350 Jun 16 23:02 tnsnames.ora
SQL>
本文永久更新链接地址:
,
Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics











Apple's latest releases of iOS18, iPadOS18 and macOS Sequoia systems have added an important feature to the Photos application, designed to help users easily recover photos and videos lost or damaged due to various reasons. The new feature introduces an album called "Recovered" in the Tools section of the Photos app that will automatically appear when a user has pictures or videos on their device that are not part of their photo library. The emergence of the "Recovered" album provides a solution for photos and videos lost due to database corruption, the camera application not saving to the photo library correctly, or a third-party application managing the photo library. Users only need a few simple steps

Hibernate polymorphic mapping can map inherited classes to the database and provides the following mapping types: joined-subclass: Create a separate table for the subclass, including all columns of the parent class. table-per-class: Create a separate table for subclasses, containing only subclass-specific columns. union-subclass: similar to joined-subclass, but the parent class table unions all subclass columns.

To handle database connection errors in PHP, you can use the following steps: Use mysqli_connect_errno() to obtain the error code. Use mysqli_connect_error() to get the error message. By capturing and logging these error messages, database connection issues can be easily identified and resolved, ensuring the smooth running of your application.

How to use MySQLi to establish a database connection in PHP: Include MySQLi extension (require_once) Create connection function (functionconnect_to_db) Call connection function ($conn=connect_to_db()) Execute query ($result=$conn->query()) Close connection ( $conn->close())

JSON data can be saved into a MySQL database by using the gjson library or the json.Unmarshal function. The gjson library provides convenience methods to parse JSON fields, and the json.Unmarshal function requires a target type pointer to unmarshal JSON data. Both methods require preparing SQL statements and performing insert operations to persist the data into the database.

Using the database callback function in Golang can achieve: executing custom code after the specified database operation is completed. Add custom behavior through separate functions without writing additional code. Callback functions are available for insert, update, delete, and query operations. You must use the sql.Exec, sql.QueryRow, or sql.Query function to use the callback function.

MySQL is an open source relational database management system. 1) Create database and tables: Use the CREATEDATABASE and CREATETABLE commands. 2) Basic operations: INSERT, UPDATE, DELETE and SELECT. 3) Advanced operations: JOIN, subquery and transaction processing. 4) Debugging skills: Check syntax, data type and permissions. 5) Optimization suggestions: Use indexes, avoid SELECT* and use transactions.

Through the Go standard library database/sql package, you can connect to remote databases such as MySQL, PostgreSQL or SQLite: create a connection string containing database connection information. Use the sql.Open() function to open a database connection. Perform database operations such as SQL queries and insert operations. Use defer to close the database connection to release resources.
