Luotianyi

「Oracle数据库报错以及解决方法整理」

| 默认分类向 | 294字

使用Oracle经常遇到各种各样的问题(菜鸡の我),有时候上次处理好了到了下次出现同样的问题各种搜索都处理不了。
所以这里做一个整理吧QAQ
database270x170.png

LRM-00109: could not open parameter file'/u01/app/oracle/product/12/dbhome_1/dbs/initDBSID.ora'
解决方法:
cat /u01/app/oracle/admin/orcl/pfile/init.ora.317201817036 > /u01/app/oracle/product/12/dbhome_1/dbs/initDBSID.ora

ORA-00845: MEMORY_TARGET not supported on this system
解决方法:
$ cat /u01/app/oracle/product/12/dbhome_1/dbs/initDBSID.ora | grep memory_target
memory_target=728m
$ df -h | grep /dev/shm
tmpfs 912M 440M 472M 49% /dev/shm
由此可见/dev/shm空间不足。
把它重新挂载一下即可
mount -o remount,size=4G /dev/shm

中文甚至英文字符显示成???
解决方法:
查看字符集

SQL> select userenv('language') from dual;

USERENV('LANGUAGE')
----------------------------------------------------
SIMPLIFIED CHINESE_CHINA.US7ASCII

然后到shell中执行(建议写到环境变量中)
export NLS_LANG="SIMPLIFIED CHINESE_CHINA".US7ASCII

ORA-01102: cannot mount database in EXCLUSIVE mode
解决方法:
如果数据库确实是没有启动,执行:
ls $ORACLE_HOME/dbs/lk*
显示
/u01/app/oracle/product/12/dbhome_1/dbs/lkORCL
使用fuser -k杀死这些正在访问lkORCL的进程
fuser -k /u01/app/oracle/product/12/dbhome_1/dbs/lkORCL
显示
/u01/app/oracle/product/12/dbhome_1/dbs/lkORCL: 13026 13028 13030 13036 13038 13042 13052 13058 13062 13064 13066 13070 13074 13076 13084 13088 13090 13096
然后SQL>startup
ORA-01081: 无法启动已在运行的 ORACLE - 请首先关闭它
解决方法:
SQL> shutdown immediate
SQL> startup
ORA-28040: No matching authentication protocol
解决方法:

echo -e "SQLNET.ALLOWED_LOGON_VERSION_SERVER=8\nSQLNET.ALLOWED_LOGON_VERSION_CLIENT=8" >>/u01/app/oracle/product/12/dbhome_1/network/admin/sqlnet.ora

然后lsnrctl stop &&lsnrctl start

ORA-28000: the account is locked
解决方法:
使用错误的密码重试次数做了限制,且超过限制次数后账户被锁。
通过以下步骤可以明确问题所在
查看用户所使用的概要文件:
SQL> select system,profile from dba_users;
查看概要文件中有关登录次数的限制:
SQL> select * from dba_profiles where profile='DEFAULT' and resource_name='FAILED_LOGIN_ATTEMPTS';
解锁:
SQL> alter user system account unlock;

ORA-12541:TNS:no listener
解决方法:
多半是文件/u01/app/oracle/product/12/dbhome_1/network/admin/listener.ora配置问题

编辑将ip地址替换为本机的ip地址即可
图像化界面调整方法:

netmgr
将Listeners的Host修改。

-EOF-

上一篇: 使用acme.sh申请使用ECC证书

下一篇: CentOS 7.4安装Oracle 12c

Kay

@2018-07-18 09:55:18

数据库 Oracle
评论的人最可爱~