今早一个基础表科室增加两个字段,一级科室OneLevelDiv,二级科室SecLevelDiv,科室表一共1500条数据,然后直接导致GetDivName这个方法失效,显示死锁
想请教下,像这种新增数据库字段,会因为调用方法过多导致数据库死锁吗?新增字段要考虑除了用户的使用时间还有什么要注意的
Oracle 有事务机制 所以像修改表结构 尽量小动作 其次就是避开用户活跃时间
新增字段期间仅仅查询的话一般不会死锁,如果在新增字段涉及更新,删除等操作可能会出现死锁,可以用以下语句查看是否锁表,找到死锁sessionid,kill掉就行了,可参考这个,https://blog.csdn.net/jungeCSND/article/details/92636532?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522166001456116782246423833%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=166001456116782246423833&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-3-92636532-null-null.nonecase&utm_term=oracle%E9%94%81&spm=1018.2226.3001.4450
select sess.sid,
sess.serial#,
lo.oracle_username,
lo.os_user_name,
ao.object_name,
lo.locked_mode
from v$locked_object lo,
dba_objects ao,
v$session sess
where ao.object_id = lo.object_id and lo.session_id = sess.sid;