oracle数据库环境变量配置修改数据库密码-爱代码爱编程
1.设置环境变量:
必须设置环境变量才可以用CMD命令访问Oracle数据库
1.1.首先找到你Oracle安装位置路径
C:\app\Administrator\product\11.2.0\dbhome_1
1.2.设置环境变量
1.2.1 设置Adimistrator变量
变量名: ORACLE_HOME
变量值:C:\app\Administrator\product\11.2.0\dbhome_1
1.2.2 新建一个变量home,再在path中添加:%ORACLE_HOME%\BIN
1.2.3 系统变量
变量名: ORACLE_HOME
变量值:C:\app\Administrator\product\11.2.0\dbhome_1\BIN
2.NLS_LANG:配置客户端的字符集(可以解决中文乱码问题)。
变量名: NLS_LANG
变量值: SIMPLIFIED CHINESE_CHINA.ZHS16GBK
查看服务端字符集:select userenv('language') from dual;
3.TNS_ADMIN:监听数据库tns,PL/SQL登陆时才能才能显示其中的数据库连接的信息
变量名 TNS_ADMIN
变量值XXX:\Oracle\product\11.2.0\dbhome_1\network\admin(你的ADMIN目录位置)
打开CMD 测试是否链接成功
输入
sqlplus
说明链接成功
2.修改用户密码
修改oracle用户的密码有以下方法:
普通用户
(1)通过alter user语法来进行修改 ,这也是最常见的方式:
(2) 第二种方式,是通过password命令来修改:
从安全性角度来说 ,推荐大家通过第二种方式来修改用户密码,这样可防止明文密码泄露。
sys用户
另外关于sys用户密码,不要使用password以及alter user 方式去修改,原因主要如下:
(1) 当REMOTE_LOGIN_PASSWORDFILE参数设置为shared时,我们使用alter user 修改sys密码时,会报
ORA-28046: Password change for SYS disallowed error.
测试如下:
(2) 大多数内部递归SQL都使用SYS用户。因此,如果您试图在数据库打开时使用ALTER USER语句更改此密码,则可能会导致死锁。
因此,对于sys用户我们需要使用orapwd来进行修改:
[oracle@orcl dbs]$ orapwd file='orapworcl' entries=5 force=y 这里注意等号左右不能有空格;
关于orapwd说明引用官网,如下:
Argument | Description |
---|---|
FILE | Name to assign to the password file. You must supply a complete path. If you supply only a file name, the file is written to the current directory. |
ENTRIES | (Optional) Maximum number of entries (user accounts) to permit in the file. |
FORCE | (Optional) If y , permits overwriting an existing password file. |
IGNORECASE | (Optional) If y , passwords are treated as case-insensitive. |