网站首页 > 技术文章 正文
前置条件:
- 处理环境为linux环境。
- oracle为docker的工具安装。
问题处理:
- ORA-12528:TNS:监听程序:所有适用例程无法建立新连接
解决方案:
- 使用命令docker exec -it {容器id} bash进入到容器内:
- 查找find / -name "listener.ora"文件
- 进入到指定目录中,并打开 vi listener.ora文件:
- 添加红框内的代码,然后保存退出:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = helowin)
(ORACLE_HOME = /home/oracle/app/oracle/product/11.2.0/dbhome_2)
(SID_NAME = helowin)
)
)
- 步骤同上,修改tnsnames.ora文件,添加(UR=A)
HELOWIN =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = helowin)
(UR=A)
)
)
连接数据库,执行命令:
SQL>alter database mount;
SQL>alter database open;
至此,ora-12528问题解决。
- ORA-12541:TNS 无监听程序
解决方案:
- 进入到容器内部,运行命令 lsnrctl status,查看监听程序的运行状态:
lsnrctl status
- 如果监听程序未运行,执行lsnrctl start启动监听程序。
lsnrctl start
- 如有启动异常,查看报错信息,我这里的报错信息是,listener.ora 文件的GLOBAL_DBNAME、ORACLE_HOME、SID_NAME三个配置不正确,修改后,可正常启动。
- ORA-01033 oracle正在初始化或者关闭
解决方案:
- 进入到容器内部,并通过命令conn / as sysdba连接数据库:
- 执行命令 shutdown immediate,出现以下信息:
- 执行命令 startup
- 这里出来ORA-00214的错误,当解决完ORA-00214后,数据库就可正常连接。
- ORA-00214控制版本导致错误,也就是说control01.ctl和control02.ctl两个文件的信息不一致,如control01.ctl的版本是1075,而control02.ctl的版本是841
解决方案:
- 修改初始化参数文件
- 进入到control01.ctl目录里
- 将control01.ctl,复制到control02.ctl目录下
- 进入control02.ctl目录下,删除原先的control02.ctl,将复制过来的control01.ctl改名为control02.ctl,这样两个文件的版本就会保持一致
- 重启docker的服务,问题解决。
- The password for system@192.168.8.141:1521/helowin has expired
解决办法:
该报错信息,我本地是因为oracle服务启动已经超过180天,也就是半年,这是由于Oracle11G的新特性所致, Oracle11G创建用户时缺省密码过期限制是180天(即6个月), 如果超过180天用户密码未做修改则该用户无法登录。
- 进入到容器内,并登录成功数据库,运行sql查询,可得知180天的过期时间
SELECT * FROM dba_profiles WHERE profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';
- 修改默认的180天为不限制
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED ;
- 当我们修改为不限制后,还需要更改数据库密码,如果你还是对原来的密码比较熟悉,改完密码后,再改回来即可。
- 成功登录进去。
猜你喜欢
- 2024-10-18 分析 Oracle 死锁的检测查询及处理方法
- 2024-10-18 如何规范化Oracle数据库审计启停操作流程?
- 2024-10-18 Oracle 逻辑结构篇 之 Oracle 控制文件管理(二)
- 2024-10-18 Windows上Oracle启动关闭慢,有时访问慢问题排查
- 2024-10-18 技术分享 LINUX卸载oracle linux怎么卸载oracle
- 2024-10-18 【Oracle】“锁”一般解决步骤(故障排查操作说明)
- 2024-10-18 原 oracle执行update一直处于执行中,跟卡住一样
- 2024-10-18 详解Oracle数据库ORA-01102异常解决过程
- 2024-10-18 PostgreSQL关闭数据库服务的三种模式
- 2024-10-18 Oracle 推出世界第一个自治操作系统
你 发表评论:
欢迎- 590℃几个Oracle空值处理函数 oracle处理null值的函数
- 583℃Oracle分析函数之Lag和Lead()使用
- 570℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 568℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 564℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 556℃【数据统计分析】详解Oracle分组函数之CUBE
- 541℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 536℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端react (48)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端懒加载 (49)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle 中文 (51)
- oracle的函数 (57)
- 前端调试 (52)
- 前端登录页面 (48)
本文暂时没有评论,来添加一个吧(●'◡'●)