坚持#第332天~oracle用户密码过期的解决方法、oracle重启出现ORA-01102问题的解决方法、navicat和PL/SQL连不上oracle的解决方法

上周上的啥东西,转发(51229都上完了)

 

channel优化:黑名单匹配,黑名单号码还是内容,号码

 

终端里面下载东西,停掉了还是很卡,就需要重启网卡了

 

卡得不行了,top之后按M,查看谁占用内存,然后pkill掉,发现是java,结束掉进程之后释放了1.5G的内容

 

oracle用户密码过期的解决方法:

设置为永久期限:

1、进入sqlplus模式

sqlplus / as sysdba;

2、先查看dba_users里面,用户使用的porfile是哪一个,一般默认是default

SELECT username,PROFILE FROM dba_users;

3、查看用户密码的有效期设置(一般默认的配置文件是DEFAULT)

SELECT * FROM dba_profiles WHERE profile='DEFAULT' ANDresource_name='PASSWORD_LIFE_TIME';

4oracle查看用户密码何时过期

select expiry_date,username from dba_users;

5、将密码有效期由默认的180天修改成“无限制”,修改之后不需要重启动数据库,会立即生效

ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

6、帐户再改一次密码

alter user 用户名 identified by 原密码;

7、使用修改后的用户登录,如果报“ORA-28000:用户已被锁”,解锁

alter user db_user account unlock;

commit;

 

问题的严重性:不解决的话会影响到后面的数据库新增用户、新增表空间、清理表空间:

启动数据库的时候报错:ORA-01102

85的搞一个监控,磁盘和cpu都好了,但是数据库出现了问题:但是启动时发现了ORA-01102这种错误,数据库并没有完全打开,不能使用查询语句,但是用PL/SQL里面可以连进去(启动数据库服务之前就能用这个工具连接进去,启动数据库服务之前我就能看到1521端口),所以我怀疑开了两个数据库实例,而且刚刚开启的这个和之前的冲突了,导致现在开启的数据库服务起不来,这个网站可以解决https://blog.csdn.net/chy8848/article/details/4742295,但是我怕数据库服务停止了,还是等上班的时候再说这个84服务器数据库的事情,好商量。

目前85的数据库服务器84的表空间只能在PL/SQL里面去看,数据库终端里面查询语句报错,你看报什么错,如果是问号,则要设置语言,ALTER session SET nls_language=AMERICAN;如果是数据库没有打开的错误,需要执行select open_mode from v$database;这个是查数据库打开报的错误,然后显示数据库没有被挂载:

,数据库没有挂载的解决方法:

这个错误主要是lk<SID>文件造成的,该文件位于ORALCE_HOME下的dbs目录下,

这个lk<SID>的主要作用是说明DATABASE MOUNT上了,不用在MOUNT.DATABASE UNMOUNT 后会删除掉,如果DATABASE确实没有MOUNT,这个文件在你也MOUNT,只有手工删除,所以一定要小心.

具体解决ORA-01102问题的步骤:

84:终端操作:

cd $ORACLE_HOME/dbs

ls lk*

[root@qa-oracle dbs]# fuser -u  lk开头的文件
lkORCL: 6666(oracle) 6668(oracle) 6670(oracle) 6672(oracle) 6674(oracle)6676(oracle) 6678(oracle) 6680(oracle) 6690(oracle) 6692(oracle) 6694(oracle)6696(oracle) 6737(oracle) 6830(oracle)

果然该文件没释放,用fuser命令kill(此操作数据库也会变成假死状态)

[root@qa-oracle dbs]# fuser -k lkORCL
lkORCL: 6666 6668 6670 6672 6674 6676 6678 6680 6690 6692 6694 6696 6737 6830
[root@qa-oracle dbs]# fuser -u lkORCL

然后将假死状态的数据库变成真死,再重生即可:

shutdown immediate

SQL> startup 
ORACLE instance started.

Total System Global Area 276824064bytes
Fixed Size 778736 bytes
Variable Size 137371152 bytes
Database Buffers 138412032 bytes
Redo Buffers 262144 bytes
Database mounted.
Database opened.
SQL>

数据库成功OPEN.

龙哥允许我down84数据库了,我猜想一下:

84数据库down掉之后对官网有没有影响

84:终端操作:

cd $ORACLE_HOME/dbs

ls sgadef*

ls lk*

Kill之后平台上面没有验证码了:

验证码显示不出来需要vim /etc/profile

exportJAVA_OPTS="-Djava.awt.headless=true"

然后重启tomcoat即可

按照上面的操作后,发现85平台网页登录不进去了,一直转圈圈,超哥说用PL/SQL连不进去85了,那就是数据库的问题了,在84数据库上面可以用系统用户登录进去,也可以用普通用户登录进去,就是navicatPL/SQL连不进去,一连就卡死了,解决方法:

重启oracle的监听:lsnrctlstop;lsnrctl start,你会发现有一个监听端点概要...

 (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=SMS)))

 (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=Slave1)(PORT=1521))),他的HOSTSlave1,说明是靠域名来解析ip的,然后去看一下域名解析,vim/etc/hosts,发现Slave1不是本机的公网ip,而是233ip,所以需要将ip更改为本机公网IP,然后重启oracle的监听就可以了。

这个问题的原因是之前松哥把这台原本是83ip改为了现在的84,但是没有去改hosts域名解析,这就会导致当你重启数据库服务器的时候PL/SQLnavicat连不上你的oracle数据库了;然后85平台网页的tomcat6p需要重启才会连接到84的数据库服务器,这个时候平台网页才能登录的进去

 

和海哥说62号的错误日志,和海哥说84数据库终端进去不能查询的问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值