可以通过SSH或者SecureCRTPortable等可以直接连接Linux *** 作系统的软件,连接到Linux系统。下面具体介绍一下:
1、登录到Linux后,就可以在命令窗口直接对Linux进行 *** 作了。先将用户切换到Oracle。当显示为[oracle@db ~]$ 时,说明切换成功。命令:su - oracle;
2、切换到Oracle用户之后,我们登录到到sqlplus,使用dba权限登录到sqlplus。在sqlplus中,我们使用conn连接一下我们具体想要 *** 作的数据库用户。命令:conn username/password,示connected表示连接成功;
3、在SQL>中输入想要进行 *** 作的sql语句,这里我们举个简单的例子,以一个单表查询为例进行演示:sql语句:select from tablename。
扩展资料:
Linux是一套免费使用和自由传播的类Unix *** 作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的 *** 作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络 *** 作系统。
Linux *** 作系统诞生于1991 年10 月5 日(这是第一次正式向外公布时间)。Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。
参考资料:
这个绝对适合新手,直接贴代码给你,要获得一个数据库连接就调用getConnection()方法,记得用完后要调用close()方法关闭连接。
import javasql;public class ConnDB {
private final String DBDRIVER = "oraclejdbcdriverOracleDriver" ;
private final String DBURL = "jdbc:oracle:thin:@服务器地址:1521:数据库名" ;
private final String DBUSER = "用户名" ;
private final String DBPASSWORD = "密码" ;
private Connection conn = null ;
public ConnDB ()
{
try
{
ClassforName(DBDRIVER) ;
thisconn = DriverManagergetConnection(DBURL,DBUSER,DBPASSWORD) ;
}
catch (Exception e)
{
//连接打开数据库失败;
}
}
// 取得数据库连接
public Connection getConnection()
{
return thisconn ;
}
// 关闭数据库连接
public void close()
{
try
{
thisconnclose() ;
}
catch (Exception e)
{
//关闭数据库失败 ;
}
}
}
oracle 11g
PLSQL Developer
方法/步骤
按住键盘上的Windows键,进入“开始”界面,找到Net Manager,单击运行
在Oracle Net Manager窗口中,依次展开“Oracle Net配置”--“本地”--“服务命名”,单击“编辑”--“创建”
3
输入网络服务名hr,单击“下一步”;
选择Tcp/Ip,单击“下一步”
该文是我连接oracle的总结 特别适合于程序开发人员与oracle菜鸟 如何配置才能使客户端连到数据库 要使一个客户端机器能连接oracle数据库 需要在客户端机器上安装oracle的客户端软件 唯一的例外就是java连接数据库的时候 可以用jdbc thin模式 不用装oracle的客户端软件 加入你在机器上装了oracle数据库 就不需要在单独在该机器上安装oracle客户端了 因为装oracle数据库的时候会自动安装oracle客户端 用过sql server数据库然后又用oracle的新手可能会有这样的疑问 问什么我用sql server的时候不用装sql server的客户端呢?原因很简单 sql server也是microsoft的 它在 *** 作系统中集成了sql server客户端 如果microsoft与oracle有协议 将oracle客户端也集成到 *** 作系统中 那我们也就不用在客户端机器装oracle客户端软机就可访问数据库了 不过 这好像是不可能实现的事情 也有的人会问 为什么在sql server中没有侦听端口一说 而在oracle中要配置侦听端口?其实sql server中也有侦听端口 只不过microsoft将侦听端口固定为 不允许你随便改动 这样给你一个错觉感觉sql server中没有侦听端口 咳 microsoft把太多的东西都封装到黑盒子里 方便使用的同时也带来的需要副作用 而oracle中的侦听端口直接在配置文件中 允许随便改动 只不过无论怎样改动 要与oracle服务器端设置的侦听端口一致 好 言归正传 我们如何做才能使客户端机器连接到oracle数据库呢? A. 安装相关软件 B. 进行适当的配置 A.在适当的位置安装适当的软件 在客户端机器 .在客户端机器上安装ORACLE的Oracle Net通讯软件 它包含在oracle的客户端软件中 .正确配置了sqlnet ora文件 NAMES DIRECTORY_PATH = (TNSNAMES … ) NAMES DEFAULT_DOMAIN=DB_DOMAIN 一般情况下我们不用NAMES DEFAULT_DOMAIN参数 如果想不用该参数用#注释掉或将该参数删除即可 对于NAMES DIRECTORY_PATH参数采用缺省值即可 对于NAMES DEFAULT_DOMAIN参数有时需要注释掉 在下面有详细解释 .正确配置了tnsname ora文件 在服务器端机器 .保证listener已经启动 .保证数据库已经启动 如果数据库没有启动 用 Oracle i: dos>sqlplus / as sysdba sqlplus> startup Oracle i: dos>svrmgrl svrmgrl>connect internal svrmgrl>startup 命令启动数据库 如果listener没有启动 用 lsnrctl start [listener name] lsnrctl status [listener name] 命令启动listener B.进行适当的配置 如何正确配置tnsname ora文件 可以在客户端机器上使用oracle Net Configuration Assistant或oracle Net Manager图形配置工具对客户端进行配置 该配置工具实际上修改tnsnames ora文件 所以我们可以直接修改tnsnames ora文件 下面以直接修改tnsnames ora文件为例 该文件的位置为 …\neork\admin\tnsnames ora (for windows) …/neork/admin/tnsnames ora (for unix) 此处 假设服务器名为testserver 服务名为 使用的侦听端口为 则tnsnams ora文件中的一个test网络服务名(数据库别名)为 test = (DESCRIPTION= (ADDRESS_LIST= (ADDRESS=(PROTOCOL=TCP)(HOST=testserver)(PORT= )) ) (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命令察看 如何利用配置的网络服务名连接到数据库 用sqlplus程序通过test网络服务名进行测试 如sqlplus system/manager@test 如果不能连接到数据库 则在tnsname ora文件中的test网络服务名(net service)后面加上Oracle数据库的DB_Domain参数值 通过用sqlplus> show parameter db_domain命令察看 此处db_domain参数值为 将其加到网络服务名后面 修改后的tnsname ora中关于该网络服务名的内容为 = (DESCRIPTION= (ADDRESS_LIST= (ADDRESS=(PROTOCOL=TCP)(HOST=testserver)(PORT= )) ) (CONNECT_DATA=(SERVICE_NAME=) ) ) 用sqlplus程序通过网络服务名测试 如sqlplus system/manager 关于为什们在网络服务名后面加db_domain参数 需要了解sqlplus连接数据库的原理 我在后面解决 常见故障中给出了详细的说明 如果上面的招数还不奏效的话 只好用一下乾坤大挪移了 将客户端的网络服务名部分 = (DESCRIPTION= (ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=testserver)(PORT= )) ) (CONNECT_DATA=(SERVICE_NAME=) ) ) 拷贝到服务器的tnsnames ora文件中 然后再服务器端用sqlplus system/manager连接到数据库 如果能连接成功 说明你的客户端与服务器端的网络有问题 如果连接不成功 用前面的部分检查网络服务名部分部分是否正确 如果确信网络服务名部分正确而且所有的客户端都连不上数据库则可能为系统TCP/IP或Oracle系统有问题 建议重新安装数据库 常见故障解决办法 TNS (ORA ) TNS:could not resolve service name 该错误表示用于连接的网络服务名在tnsnames ora文件中不存在 如上面的tnsnames ora中的网络服务名只有test 假如用户在连接时用sqlplus system/manager@test 则就会给出TNS 错误 要注意的是 有时即使在tnsnames ora文件中有相应的网络服务名 可是用该网络服务名连接时还会出错 出现这种情况的典型配置如下(在客户端的机器上) sqlnet ora文件 NAMES DIRECTORY_PATH = (TNSNAMES … ) NAMES DEFAULT_DOMAIN = tnsnames ora文件: test = (DESCRIPTION= (ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=testserver)(PORT= )) ) (CONNECT_DATA=(SERVICE_NAME=) ) ) sqlplus运行基本机理 在用户输入sqlplus system/manager@test后 sqlplus程序会自动到sqlnet ora文件中找NAMES DEFAULT_DOMAIN参数 假如该参数存在 则将该参数中的值取出 加到网络服务名的后面 即此例中你的输入由sqlplus system/manager@test自动变为sqlplus system/man 然后再到tnsnames ora文件中找网络服务名 这当然找不到了 因为该文件中只有test网络服务名 所以报错 解决的办法就是将sqlnet ora文件中的NAMES DEFAULT_DOMAIN参数注释掉即可 如#NAMES DEFAULT_DOMAIN = 假如NAMES DEFAULT_DOMAIN参数不存在 则sqlplus程序会直接到tnsnames ora文件中找test网络服务名 然后取出其中的host port tcp service_name 利用这些信息将连接请求发送到正确的数据库服务器上 另外原则上tnsnames ora中的配置不区分大小写 但是我的确遇到区分大小写的情况 所以最好将使用的网络服务与tnsnames ora中配置的完全一样 ORA : TNS:listener could not resolve SERVICE_NAME given in connect Descriptor 该错误表示能在tnsnames ora中找到网络服务名 但是在tnsnames ora中指定的SERVICE_NAME与服务器端的SERVICE_NAME不一致 解决的办法是修改tnsnames ora中的SERVICE_NAME 易混淆术语介绍 Db_name 对一个数据库(Oracle database)的唯一标识 该数据库为第一章讲到的Oracle database 这种表示对于单个数据库是足够的 但是随着由多个数据库构成的分布式数据库的普及 这种命令数据库的方法给数据库的管理造成一定的负担 因为各个数据库的名字可能一样 造成管理上的混乱 为了解决这种情况 引入了Db_domain参数 这样在数据库的标识是由Db_name和Db_domain两个参数共同决定的 避免了因为数据库重名而造成管理上的混乱 这类似于互连网上的机器名的管理 我们将Db_name和Db_domain两个参数用 连接起来 表示一个数据库 并将该数据库的名称称为Global_name 即它扩展了Db_name Db_name参数只能由字母 数字 _ # $ 组成 而且最多 个字符 Db_domain 定义一个数据库所在的域 该域的命名同互联网的 域 没有任何关系 只是数据库管理员为了更好的管理分布式数据库而根据实际情况决定的 当然为了管理方便 可以将其等于互联网的域 Global_name 对一个数据库(Oracle database)的唯一标识 oracle建议用此种方法命令数据库 该值是在创建数据库是决定的 缺省值为Db_name Db_domain 在以后对参数文件中Db_name与Db_domain参数的任何修改不影响Global_name的值 如果要修改Global_name 只能用ALTER DATABASE RENAME GLOBAL_NAME TO <db_name db_domain>命令进行修改 然后修改相应参数 Service_name 该参数是oracle i新引进的 在 i以前 我们用SID来表示标识数据库的一个实例 但是在Oracle的并行环境中 一个数据库对应多个实例 这样就需要多个网络服务名 设置繁琐 为了方便并行环境中的设置 引进了Service_name参数 该参数对应一个数据库 而不是一个实例 而且该参数有许多其它的好处 该参数的缺省值为Db_name Db_domain 即等于Global_name 一个数据库可以对应多个Service_name 以便实现更灵活的配置 该参数与SID没有直接关系 即不必Service name 必须与SID一样 Net service name 网络服务名 又可以称为数据库别名(database alias) 是客户端程序访问数据库时所需要 屏蔽了客户端如何连接到服务器端的细节 实现了数据库的位置透明的特性 lishixinzhi/Article/program/Oracle/201311/17463
第一种情况:
若oracle服务器装在本机上,那就不多说了,连接只是用户名和密码的问题了。不过要注意环境变量%ORACLE_HOME%/network/admin/是否设置。
第二种情况:
本机未安装oracle服务器,也未安装oracle客户端。但是安装了pl sql development、toad sql development、sql navigator等管理数据库的工具。在虚拟机或者另一台电脑上安装了oracle服务器,也就是虚拟机或者另一台电脑此时作为服务器。
这种情况下,本人以pl sql development远程连接ORACLE服务端数据库为例:
1、在安装oracle服务器的机器上搜索下列文件:
ocidll
ocijdbc10dll
ociw32dll
orannzsbb10dll
oraocci10dll
oraociei10dll
sqlnetora
tnsnamesora
classes12jar
ojdbc14jar
把这些找到的文件复制放到一个文件夹,如 oraclient,将此文件夹复制到客户端机器上。如放置路径为 D:\oraclient。
2、配置tnsnamesora,修改其中的数据库连接串。
oracledata = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192168058)(PORT = 1521)) (CONNECT_DATA = (SERVICE_NAME = oracledata) )
其中,oracledata是要连接的服务名;HOST = 192168058,是服务器IP地址;PORT = 1521是端口号。
3、添加第一个环境变量,名为TNS_ADMIN,值为tnsnamesora文件所在路径(如:D:\oraclient,特别是重装后或其它 *** 作,忘了TNS_ADMIN变量,plsql登陆就会报无法解析指定的连接标识符),这是为了能够找到上面说的tnsnamesora。这步是最重要的。
添加第二个环境变量(可有可无):“NLS_LANG = SIMPLIFIED CHINESE_CHINAZHS16GBK”,(AMERICAN_AMERICAUS7ASCII 是ASCII编码类型,其它类型可自己到服务器看一下或网上查找一下)(本步骤暂时要做对,如果编码不对,会产生乱码)。
4、下载并安装PL SQL Developer配置应用:
打开PL SQL Developer,登入界面点取消,进入后选择菜单栏 tools->preferences->connection :
Oracle Home=D:\oracleclient OCI library=D:\oracleclient\ocidll
5、再次打开plsql则会在database中有oracledata 选项输入用户名密码就可以登陆。
Linux系统下可以用sqlplus命令连接oracle数据库,方法如下:
sqlplus命令语法:
#sqlplus usr/pwd@//host:port/sid
#usr:用户名
#pwd:密码
#host:数据库服务器IP
#port:端口
#sid:数据库标识符
sqlplus命令连接Oracle示例:
[oracle@mzl ~]$ sqlplus risenet/1@//19216813099:1521/risenet
SQLPlus: Release 102010 - Production on Mon Feb 18 15:53:34 2008
Copyright (c) 1982, 2005, Oracle All rights reserved
Connected to:
Oracle9i Enterprise Edition Release 92010 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 92010 - Production
#测试数据库select查询语句
SQL> select instance_name,status from v$instance;
INSTANCE_NAME STATUS
---------------- ------------
risenet OPEN
SQL>
1、打开所有程序->找到oracle-oradb11g-home1->Net Configuration Assistant。
2、选择本地网络服务名配置,点击下一步。
3、选择添加,点击下一步。
4、填写服务名,点击下一步。
5、选择通信协议:TCP,点击下一步。
6、填写数据库所在的主机名(也可以是IP地址),选择端口号(根据数据库所在的主机的端口号进行选择,一般是标准端口号),点击下一步,选择测试,点击下一步。
7、测试成功。
以上就是关于怎么用linux命令连接racle数据库全部的内容,包括:怎么用linux命令连接racle数据库、本地连接服务器的oracle数据库到底怎么连接,百度的都是来回转,没有一个新手适用的、oracle怎么连接服务器数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)