马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
Linux系统中,DBA一般使用oracle用户登陆/访问Linux操作系统,然后使用sqlplus命令登陆数据库进行一些维护操作,如果由于某些特殊原因,系统管理员创建了一个db_support用户,如果使用dba_support这个普通账号登陆了Linux操作系统,如何使用sqlplus访问数据库呢?
首先,我们必须在当前用户的主目录下设置环境变量,在~/.bash_profile中加入下面环境变量,例如:- export ORACLE_SID=gsp
- export ORACLE_BASE=/opt/oracle19c
- export ORACLE_HOME=/opt/oracle19c/product/19.3.0/db_1
- PATH=/usr/sbin:$PATH; export PATH
- PATH=$ORACLE_HOME/bin:$PATH; export PATH
- LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
- CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
- export PATH
复制代码 执行source ~/.bash_profile使之生效。然后我们可以使用账号密码登陆数据库。- $ sqlplus sys/****** as sysdba
- SQL*Plus: Release 19.0.0.0.0 - Production on Wed Oct 18 16:19:16 2023
- Version 19.16.0.0.0
- Copyright (c) 1982, 2022, Oracle. All rights reserved.
- Connected to:
- Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
- Version 19.16.0.0.0
- SQL>
复制代码 在oracle用户下可以使用下面方式(系统认证登陆)登陆数据库,但是,在db_support用户下,使用下面方式登陆数据库会报ORA-01017错误- $sqlplus / as sysdba
- SQL*Plus: Release 19.0.0.0.0 - Production on Wed Aug 9 10:25:39 2023
- Version 19.16.0.0.0
- Copyright (c) 1982, 2022, Oracle. All rights reserved.
- ERROR:
- ORA-01017: invalid username/password; logon denied
- Enter user-name:
- ERROR:
- ORA-01017: invalid username/password; logon denied
复制代码 那么怎么解决这个问题呢?其实导致这个错误的原因在于这个用户没有加入dba用户组。 检查这两个用户所属的用户组,发现dba_support账号不在dba用户组下面,如下所示:- [oracle@db_01 ~]$ id
- uid=54321(oracle) gid=54321(oinstall) groups=54321(oinstall),54322(dba)
- <p>[dba_support@db_01 ~]$ id dba_support
- uid=54322(dba_support) gid=54321(oinstall) groups=54321(oinstall)
- </p>
复制代码 切换到root用户下,将dba_support加入dba用户组后,这个问题解决了- #usermod -G dba dba_support
复制代码 扫描上面二维码关注我如果你真心觉得文章写得不错,而且对你有所帮助,那就不妨帮忙“推荐"一下,您的“推荐”和”打赏“将是我最大的写作动力!本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接. |