上一篇
场景还原:
凌晨2点,你正喝着第三杯咖啡☕赶项目,突然监控警报狂响——生产数据库罢工了!日志里刺眼的ORA-28365: wallet is not open
让你瞬间清醒,别慌!这份2025年最新实战指南能让你10分钟内远程恢复业务!
当Oracle尝试访问加密数据(如透明数据加密TDE)时,如果出现以下情况:
ORA-28365: wallet is not open
ORA-28360: encryption wallet not open
等衍生错误 根本原因👉 钱包文件(ewallet.p12/cwallet.sso)未正确加载
1️⃣ 检查钱包路径
SELECT * FROM v$encryption_wallet; -- 查看钱包状态和位置
⚠️ 重点看STATUS
列:OPEN
才正常,CLOSED
或NOT_AVAILABLE
就是问题所在
2️⃣ 验证钱包文件存在性(需SSH到服务器)
ls -l $ORACLE_BASE/admin/$ORACLE_SID/wallet/ # 默认路径示例
🔑 应有ewallet.p12
或cwallet.sso
文件,权限需为oracle:dba
3️⃣ 检查sqlnet.ora配置
ENCRYPTION_WALLET_LOCATION= (SOURCE=(METHOD=FILE)(METHOD_DATA= (DIRECTORY=/path/to/wallet))) -- 必须与实际路径一致!
4️⃣ 查看监听日志(远程诊断关键)
tail -100 $ORACLE_HOME/network/log/listener.log | grep -i wallet
5️⃣ 尝试手动开钱包
ADMINISTER KEY MANAGEMENT SET KEYSTORE OPEN IDENTIFIED BY "YourWalletPassword"; -- 密码错误会报ORA-28353
✅ 急救措施:
-- 先强制关闭再重试(适用于钱包锁死) ADMINISTER KEY MANAGEMENT SET KEYSTORE CLOSE IDENTIFIED BY "WrongPassword" FORCE KEYSTORE; ADMINISTER KEY MANAGEMENT SET KEYSTORE OPEN IDENTIFIED BY "CorrectPassword";
💡 预防技巧:
orapki
工具备份钱包: orapki wallet export -wallet /path/to/wallet -pwd YourPwd -to_file wallet_backup.p12
🚑 恢复步骤:
-- 1. 创建新钱包 ADMINISTER KEY MANAGEMENT CREATE KEYSTORE '/new/path' IDENTIFIED BY "NewPwd123";
-- 2. 重新生成主密钥(会触发表空间加密密钥轮换) ADMINISTER KEY MANAGEMENT SET ENCRYPTION KEY IDENTIFIED BY "NewPwd123";
### 📌 场景3:自动开钱包失效(常见于重启后)
🤖 **自动化配置**:
在`sqlnet.ora`中添加:
```ini
WALLET_LOCATION =
(SOURCE =
(METHOD = FILE)
(METHOD_DATA =
(DIRECTORY = /path/to/wallet)
)
)
SQLNET.AUTO_OPEN_WALLET=TRUE -- 关键参数!
当需要协助时,快速提供这些信息:
v$encryption_wallet
查询结果截图 sqlnet.ora
和listener.ora
相关片段 ls -l
输出(隐藏敏感路径) ✔️ 每月验证钱包备份可用性
✔️ 使用Chef/Ansible自动化配置检查
✔️ 关键操作前执行:
BEGIN DBMS_LOCK.SLEEP(5); -- 给钱包加载留缓冲时间 OPEN_WALLET('YourPwd'); END;
最后的大招:如果所有方法失效,记住Oracle支持热线📞 (+1) 800-ORACLE-1(2025年仍有效),报上SR号让他们远程接管!
本文由 皇采波 于2025-08-03发表在【云服务器提供商】,文中图片由(皇采波)上传,本平台仅提供信息存储服务;作者观点、意见不代表本站立场,如有侵权,请联系我们删除;若有图片侵权,请您准备原始证明材料和公证书后联系我方删除!
本文链接:https://vps.7tqx.com/wenda/529935.html
发表评论