首页 > Linux操作系统 > Linux操作系统 > Oracle wallet
1) 语法: $ mkstore
2) 创建Wallet, 存放于某目录下
$ $ORACLE_HOME/bin/mkstore -wrl $ORACLE_HOME/network/admin/wallet -create
Enter password:<输入钱包密码> 1qaz2wsx
Enter password again:<确认钱包密码>
$ ls $ORACLE_HOME/network/admin/wallet
cwallet.sso ewallet.p12
3) 建立网络连接串, 注意每个网络连接串对应一个数据库用户
查询 $TNS_ADMIN 找到 tnsnames.ora文件(有些不是在默认目录)。
$ vi $ORACLE_HOME/network/admin/tnsnames.ora
db_tony =
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=tcp)(HOST=szxxsr-t)(PORT=1527))
)
(CONNECT_DATA=
(SERVICE_NAME=UAT3)
)
)
4) 加入用户认证信息到Wallet
其中db_tony 是前面设置的网路连接串, "qiwang1979"是用户tony的密码.
$ mkstore -wrl $ORACLE_HOME/network/admin/wallet -createCredential db_tony tony "qiwang1979"
Enter wallet password:<输入钱包密码>
Create credential oracle.security.client.connect_string1
5) 确认用户认证信息已经加入到Wallet
$ mkstore -wrl $ORACLE_HOME/network/admin/wallet -listCredential
Enter wallet password:<输入钱包密码>
List credential (index: connect_string username)
1: db_tony tony
6) 加入Wallet位置信息到sqlnet.ora
查询 $TNS_ADMIN 找到 sqlnet.ora文件。
$ vi $ORACLE_HOME/network/admin/sqlnet.ora
WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=/oracle/app/oracle/product/11.2.0/db_erp1/network/admin/wallet)))
SQLNET.WALLET_OVERRIDE=TRUE
7) 登录测试
$ sqlplus /@db_tony
SQL*Plus: Release 10.2.0.4.0 - Production on Thu Sep 24 14:05:17 2009
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> show user;
USER is "TONY"
登录成功, 设置完毕!以后就可以在shell里直接使用"sqlplus /@db_tony"登录数据库操作了, 无需设置密码.
8) 修改用户密码测试
SQL> alter user tony identified by "wsedrf1324";
SQL> exit
$ sqlplus /@db_tony
SQL*Plus: Release 10.2.0.4.0 - Production on Thu Sep 24 14:07:05 2009
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
ERROR:
ORA-01017: invalid username/password; logon denied
9) 如果修改了用户密码, 则需要重新修改认证信息
$ mkstore -wrl $ORACLE_HOME/network/admin/wallet/ -modifyCredential db_tony tony "wsedrf1324"
Enter wallet password: <输入钱包密码>
Modify credential
Modify 1
10) 删除Wallet认证的方法
$ mkstore -wrl $ORACLE_HOME/network/admin/wallet/ -deleteCredential db_tony
Enter wallet password:<输入钱包密码>
Delete credential
Delete 1
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/35489/viewspace-723213/,如需转载,请注明出处,否则将追究法律责任。