怎么在Oracle中使用sqlplus连接数据库

发布时间:2021-05-31 16:39:46 作者:Leah
来源:亿速云 阅读:385

怎么在Oracle中使用sqlplus连接数据库?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

方式1(本机): / as sysdba

在oracle服务器,可以直接通过操作系统权限认证,使用sysdba方式登陆,前提是你可以登入服务器,并且拥有此权限。

oracle@e871d42341c0:~$ id
uid=1000(oracle) gid=1000(dba) groups=1000(dba)
oracle@e871d42341c0:~$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.2.0 Production on Sun Oct 21 08:20:51 2018
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
SQL> show user
USER is "SYS"
SQL>

方式2(本机): sqlplus 用户名/密码

在本机除了sysdba,还可以通过用户名和密码的方式登陆进来

oracle@e871d42341c0:~$ sqlplus system/liumiao123
SQL*Plus: Release 11.2.0.2.0 Production on Sun Oct 21 08:21:27 2018
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
SQL> show user
USER is "SYSTEM"
SQL>

方式3: 通过tnsname方式

通过tns设定,保证联通性的情况下使用 sqlplus 用户名/密码@Oracle实例名 的方式进行连接。

确认tns连接通畅

oracle@e871d42341c0:~$ tnsping XE
TNS Ping Utility for Linux: Version 11.2.0.2.0 - Production on 21-OCT-2018 10:32:55
Copyright (c) 1997, 2011, Oracle. All rights reserved.
Used parameter files:
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = e871d42341c0)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = XE)))
OK (0 msec)
oracle@e871d42341c0:~$

确认oracle的监听进程正常启动

oracle@e871d42341c0:~$ ps -ef |grep lsnr |grep -v grep
oracle   27   1 0 Oct16 ?    00:00:28 /u01/app/oracle/product/11.2.0/xe/bin/tnslsnr LISTENER -inherit
oracle@e871d42341c0:~$

连接

oracle@e871d42341c0:~$ sqlplus system/liumiao123@XE
SQL*Plus: Release 11.2.0.2.0 Production on Sun Oct 21 10:34:04 2018
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
SQL> show user
USER is "SYSTEM"
SQL>

方式4: IP和port的方式定位

还可通过IP和port的方式定位Oracle实例进行连接:sqlplus 用户名/密码@//IP地址或者hostname:端口号/Oracle实例名

# netstat -tunlp |grep 1521
tcp6    0   0 :::1521         :::*          LISTEN   -        
# ip ad |grep 172.17
  inet 172.17.0.2/16 scope global eth0
# sqlplus system/abcd1234@//172.17.0.2:1521/XE
SQL*Plus: Release 11.2.0.2.0 Production on Sun Oct 21 10:37:31 2018
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
SQL>

方法5: 使用nolog 和 connect实现连接

准确的来说,这种方式和方式2/方式3/方式4没有本质区别,无非就是用户名/密码以及实例名的信息的写法不同而已,详细如下:

# sqlplus /nolog
SQL*Plus: Release 11.2.0.2.0 Production on Sun Oct 21 11:19:50 2018
Copyright (c) 1982, 2011, Oracle. All rights reserved.
SQL> connect system/liumiao123
Connected.
SQL> connect system/liumiao123@XE
Connected.
SQL> connect system/liumiao123@//172.17.0.2:1521/XE
Connected.
SQL> show user
USER is "SYSTEM"
SQL>

看完上述内容,你们掌握怎么在Oracle中使用sqlplus连接数据库的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

推荐阅读:
  1. oracle sqlplus常用命令
  2. Oracle sqlplus 设置

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

oracle sqlplus

上一篇:怎么在python3中连接MySQL数据库

下一篇:使用python怎么远程连接服务器MySQL数据库

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》