方式一:简易连接,不用进行网络配置,其实就是tnsname.ora文件,但只支持oracle10G以上。
命令:sqlplus 用户名/密码@ip地址[:端口]/service_name [as sysdba]
示例:sqlplus
sys/pwd@ip:1521/test
as sysdba (注意这里的test是tnsnames.ora中的SERVICE_NAME,而非其它)
备注:使用默认1521端口时可省略输入
方式二:进行网络配置 oracle11和以前的版本
2.1图形化操作:Net Configuration Assistant--> 本地Net服务名配置-->添加->服务名->协议(选tcp)->主机名称->端口->完成。
2.2文本化操作:编辑$ORACLE_HOME/NETWORK/ADMIN/tnsnames.ora文件
test
=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL =
TCP
)(HOST =
ip或主机名称
)(PORT =
1521
))
)
(CONNECT_DATA =
(
SERVICE_NAME
=
数据库的服务名称)
)
)
备注说明:红色为修改部分
PROTOCOL:客户端与服务器端通讯的协议,一般为TCP,该内容一般不用改。
HOST:数据库侦听所在的机器的机器名或IP地址,数据库侦听一般与数据库在同一个机器上,所以当我说数据库侦听所在的机器一般也是指数据库所在的机器。在UNIX或WINDOWS下,可以通过在数据库侦听所在的机器的命令提示符下使hostname命令得到机器名,或通过ipconfig(for WINDOWS) or ifconfig(for UNIX)命令得到IP地址。需要注意的是,不管用机器名或IP地址,在客户端一定要用ping命令ping通数据库侦听所在的机器的机器名,否则需要在hosts文件中加入数据库侦听所在的机器的机器名的解析。
PORT:数据库侦听正在侦听的端口.可以察看服务器端的listener.ora文件或在数据库侦听所在的机器的命令提
示符下通过lnsrctl status [listener name]命令察看。此处Port的值一定要与数据库侦听正在侦听的端口一
样。
SERVICE_NAME:在服务器端,用system用户登陆后,sqlplus> show parameter service_name命令察看。
======================================================================
如何保证客户端机器连接到oracle数据库呢?
A. 客户端
1.在客户端机器上安装ORACLE的Oracle Net通讯软件,它包含在oracle的客户端软件中。
2.正确配置了sqlnet.ora文件
3.正确配置了tnsname.ora文件
B. 服务器端
1.保证listener已经启动 lsntctl start
2.保证数据库已经启动。 sql>startup
SQL plus连接远程Oralce数据库
如果要连接远程数据库,传统的一定可行的方法是在本地装一个oracle,然后使用“Network Configuration Assistant”配置,之后用PL/SQL Dev连接
oracle官网上提供了最小访问包,就是如下3个包,加起来35MB。
1、首先去oracle的官方网站上http://www.oracle.com/technology/software/tech/oci/instantclient/index.html下载(下面是10g的):
instantclient-basic-win32-10.2.0.4.zip
instantclient-odbc-win32-10.2.0.4.zip
instantclient-sqlplus-win32-10.2.0.4.zip
将下载的安装包全部解压,放在同一个目录下,比如在d:\sqlplus。
2、 “控制面板”-”系统”-”高级”-”环境变量”-”系统变量”添加几个环境变量:
NLS_LANG = SIMPLIFIED CHINESE_CHINA.ZHS16GBK(或AMERICAN_AMERICA.ZHS16GBK)
TNS_ADMIN = d:\sqlplus
LD_LIBRARY_PATH = d:\sqlplus
SQLPATH = d:\sqlplus
Path变量结尾添加d:\sqlplus
3、在d:\sqlplus目录下创建TNSNAME.ORA文件,自己敲容易出问题,建议直接到安装oracle数据库的机器上拷贝过来用,内容如下:
# tnsnames.ora Network Configuration File: D:\oracle\product\10.1.0\db_2\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.208.120)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
以上文件中,ORCL是个连接标示符,可以自己修改,HOST是远程Oracle服务器的地址,PORT是Oracle的服务端口,没有修改过的话,默认是1521。Service_name是远程实例名称。
4、命令行下,切换到d:\sqlplus,运行odbc_install.exe,安装ODBC驱动。
5、使用sql-plus连接
命令行下执行sqlplus /nolog
进入sqlplus提示符,输入
connect <username>/<password>@<连接标识符>
sqlplus
用户名/密码@192.168.208.120:1521/orcl
没有意外的话连接成功。
如果上述方法试验没有成功,用下面的方式最直接了
Sqlplus
system/manager@'(description=(address_list=(address=(proto=tcp)(host=192.168.208.120)(port=1521)))(connect_data=(service_name=orcl)))’
如果要连接远程数据库,传统的一定可行的方法是在本地装一个oracle,然后使用“Network Configuration Assistant”配置,之后用PL/SQL Dev连接
oracle官网上提供了最小访问包,就是如下3个包,加起来35MB。
1、首先去oracle的官方网站上http://www.oracle.com/technology/software/tech/oci/instantclient/index.html下载(下面是10g的):
instantclient-basic-win32-10.2.0.4.zip
instantclient-odbc-win32-10.2.0.4.zip
instantclient-sqlplus-win32-10.2.0.4.zip
将下载的安装包全部解压,放在同一个目录下,比如在d:\sqlplus。
2、 “控制面板”-”系统”-”高级”-”环境变量”-”系统变量”添加几个环境变量:
NLS_LANG = SIMPLIFIED CHINESE_CHINA.ZHS16GBK(或AMERICAN_AMERICA.ZHS16GBK)
TNS_ADMIN = d:\sqlplus
LD_LIBRARY_PATH = d:\sqlplus
SQLPATH = d:\sqlplus
Path变量结尾添加d:\sqlplus
3、在d:\sqlplus目录下创建TNSNAME.ORA文件,自己敲容易出问题,建议直接到安装oracle数据库的机器上拷贝过来用,内容如下:
# tnsnames.ora Network Configuration File: D:\oracle\product\10.1.0\db_2\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.208.120)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
以上文件中,ORCL是个连接标示符,可以自己修改,HOST是远程Oracle服务器的地址,PORT是Oracle的服务端口,没有修改过的话,默认是1521。Service_name是远程实例名称。
4、命令行下,切换到d:\sqlplus,运行odbc_install.exe,安装ODBC驱动。
5、使用sql-plus连接
命令行下执行sqlplus /nolog
进入sqlplus提示符,输入
connect <username>/<password>@<连接标识符>
或者
sqlplus system/[email protected]:1521/orcl
没有意外的话连接成功。
如果上述方法试验没有成功,用下面的方式最直接了
Sqlplus
system/manager@'(description=(address_list=(address=(proto=tcp)(host=192.168.208.120)(port=1521)))(connect_data=(service_name=orcl)))’
(责任编辑:admin)
1. Windows->Start-> cmd;
2. Input : sqlplus
username/password@hostname:port/SID
;
3. @file_name, 比如 将d:/test.sql 导入远程数据库,执行:
@d:/test.sql;
4. 如果test.sql中没有commit; 记得执行commit;
5. 完成。