
Oracle
Oracle数据库
软茸兔
无
展开
-
笔记:Windows故障转移集群下的oracle打补丁
上述所有重启服务器都可以不做,使用工具排查可能的文件占用,干掉对应服务或进程即可。工具可使用微软提供的 ProcessExplorer。1,关闭并禁用故障转移集群的服务,如下。2,关闭故障转移集群中资源的自启动。6,在一个节点启动数据库,跑脚本。7,开启关闭的服务并开启自启动。以下方法比较暴力,请谨慎使用。5,分别对所有节点打补丁。9,验证故障转移集群。原创 2024-05-31 13:09:52 · 266 阅读 · 0 评论 -
笔记:Oracle清理sysaux表空间
sysaux snmpshot原创 2022-12-27 09:09:46 · 1436 阅读 · 0 评论 -
笔记:dba_2pc_pending
说明根据表中不同的状态(state字段值),使用的处理结果(确认需要处理了再处理)操作状态为 committed 的:execute DBMS_TRANSACTION.PURGE_LOST_DB_ENTRY('<LOCAL_TRAN_ID>');状态为 collecting 的:execute DBMS_TRANSACTION.PURGE_LOST_DB_ENTRY('<LOCAL_TRAN_ID>');状态为 prepared 的:rollback force原创 2021-11-01 16:59:06 · 1023 阅读 · 0 评论 -
python小应用:Oracle数据库批量巡检
说明巡检代码主体仅供练习使用import osimport shutilimport daycheck_v1.source.database as dbcimport daycheck_v1.source.readfile as rf# 日期转换+空值判断def date_rep(t_date): if t_date is None: return 'Null' else: return t_date.ctime()# 数据库列表配置原创 2021-10-18 16:39:54 · 719 阅读 · 0 评论 -
python小应用:Oracle数据库连接及查询
说明为自动巡检工具准备import cx_Oracleclass Database: # 定义基本属性 c_user = 'admin' __c_pass = 'admin' c_url = 'localhost:1521/orcl' # 定义构造方法 def __init__(self,u,p,l): self.c_user = u self.__c_pass = p self.c_url = l原创 2021-10-18 16:27:15 · 275 阅读 · 0 评论 -
笔记:安装oracle client 32时报错ins-20802
说明在安装oracle数据库32位客户端时,安装成功,但在配置net时报错 ins-20802处理方法进入软件安装目录:\client32\stage\ext\bin下安裝vcredist_x86.exe这个文件,安装完成后点击安装界面上的重试按钮。*参考文章:https://blog.youkuaiyun.com/weixin_43673021/article/details/83992159 *...原创 2021-09-28 16:14:15 · 1008 阅读 · 0 评论 -
笔记:ORACLE数据库表数据全角转半角
说明数据导入后发现部分数据为全角数据,不符合条件,需要进行转换分析使用数据库自带的函数进行处理语法: TO_MULTI_BYTE(String)功能: 计算所有单字节字符都替换为等价的多字节字符的String.该函数只有当数据库字符集同时包含多字节和单字节的字符的时候有效.否则, String不会进行任何处理. TO_MULTI_BYTE和TO_SINGLE_BYTE是相反的两个函数.语法: TO_SINGLE_BYTE(String )功能: 计算String中所有多字节字符都替换原创 2021-09-13 14:49:44 · 1073 阅读 · 0 评论 -
笔记:一次修改密码导致的用户夯死
说明因业务用户密码太简单,对密码进行修改。部分服务器连接用户密码未修改。因为开启密码失败次数验证,用户不会锁定,但是却发生了用户登陆的问题。该用户无法正常登陆,其他用户登陆正常,用户状态为open。分析1,FAILED_LOGIN_ATTEMPTS未设置,用户不会被锁定2,修改密码的用户无法正常连接3,数据库出现大量library cache lock 等待事件通过查看mos 1309738.1 可以得出是因为11g的新特性密码延迟认证导致问题处理关闭特性ALTER SYSTE.原创 2021-08-16 16:45:35 · 417 阅读 · 2 评论 -
笔记:创建Spfile时报错ORA-17502 ORA-15001 ORA-15040
问题描述1,12.1.0.2 RAC环境2,未使用DBCA建库,直接使用rman备份进行恢复3,使用ASM存储在进行spfile创建时报错SQL> create spfile='+DATADG/orcl/spfileaorcl.ora' from pfile='/home/oracle/pfile.ora';create spfile='+DATADG/orcl/spfileorcl.ora' from pfile='/home/oracle/pfile.ora'*ERROR原创 2021-08-04 15:20:29 · 1575 阅读 · 0 评论 -
笔记:Oracle数据库RAC集群环境下开启防火墙
说明:在rac环境下开启防火墙,需要添加的策略,仅供参考配置:1,HAIP使用的网段(11.2.0.2版本以后)69.254.*.*/255.255.0.0防火墙策略-A INPUT -s 169.254.0.0/16 -j ACCEPT2,私网地址-A INPUT -s 192.168.0.1 -j ACCEPT-A INPUT -s 192.168.0.1 -j ACCEPT3,公网地址,VIP,SCAN IP-A INPUT -s 10.10.1.1 -p t原创 2021-08-03 17:35:48 · 1729 阅读 · 0 评论 -
笔记:无法在windows下同时安装32位及64位客户端
背景操作系统版本:Windows Server 2012 R2 64bit数据库客户端版本:12.1.0.2前置条件:已安装Oracle 12.1.0.2 64位客户端描述可以打开32位客户端安装包,进入客户端安装程序,可以通过安装验证;点击安装后,在安装界面闪退,安装进度此时为0%。分析查看安装日志,可看到如下信息:信息: 无法从该产品清单读取主目录列表。处理1,打开注册表2,进入HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node3,创建原创 2021-08-03 10:16:58 · 476 阅读 · 0 评论 -
笔记:ORA-24247: network access denied by access control list (ACL)
报错信息:ERROR at line 1:ORA-24247: network access denied by access control list (ACL)ORA-06512: at "SYS.UTL_INADDR", line 4ORA-06512: at "SYS.UTL_INADDR", line 35ORA-06512: at line 1解决方案:exec dbms_network_acl_admin.create_acl(acl => 'resolve.x.原创 2021-05-07 15:06:45 · 427 阅读 · 0 评论 -
笔记:impdp导入报错 ORA-39083 ORA-02264
说明:在对数据表做历史表创建时,使用remap_table后,因约束名称冲突导致导入失败报错信息如下Processing object type SCHEMA_EXPORT/TABLE/TABLEORA-39083: Object type TABLE:"A5ADMIN"."SYS_DEPARTMENT_0329" failed to create with error:ORA-02264: name already used by an existing constraint处理:手动创建原创 2021-04-02 11:01:05 · 847 阅读 · 0 评论 -
笔记:安装oracle RAC时ssh默认端口号修改导致的问题
说明:在安装oracle数据库集群RAC时,需要使用ssh的免密登陆,此时,若修改ssh使用非22默认端口,将导致数据库安装前无法配置免密,此时将无法正常安装解决方案:修改ssh服务默认端口号/etc/service把其中ssh 22/tcp # SSH Remote Login Protocol的端口修改为指定端口号即可linux 7修改 /etc/services...原创 2021-02-03 15:03:22 · 1006 阅读 · 0 评论 -
笔记:不要总看df -h也要看下df -i,因INODE满导致的超连接数故障
现象:数据库出现故障,连接时报错进程不足。ORA-00020: maximum number of processes (2000) exceeded分析及处理:查看数据库进程 发现大约1800个LOCAL=NO进程,此时已经无法进入数据库查询信息。使用os命令kill掉一些进程以释放资源 --head 取前10条ps -ef|grep LOCAL=NO|grep -v grep|awk '{print $2}'|head|xargs kill -9此时进入数据库报错发生改变:O原创 2021-01-05 11:18:58 · 631 阅读 · 0 评论 -
笔记:Linux 7.5下udev配置Oracle共享磁盘
实测可用1,vi /etc/udev/rules.d/99-oracle-asmdevices.rulesKERNEL=="sd*[!0-9]", ENV{DEVTYPE}=="disk", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d $devnode", RESULT=="36000c29920553e36304dd5ad10a58eae", RUN +="/bin/sh -c 'mknod /dev/asmocr01原创 2020-12-10 09:47:14 · 508 阅读 · 0 评论 -
笔记:创建Oracle数据库scheduler job
创建jobbegin dbms_scheduler.create_job(job_name => 'J_MDSDE_COUNT', job_type => 'STORED_PROCEDURE', job_action => 'pro_mdsde_count', start原创 2020-12-07 17:49:29 · 231 阅读 · 0 评论 -
笔记:sql记录-查看 library cache lock 锁定对象
select /*+ ordered */ w1.sid waiting_session, h1.sid holding_session, w.kgllktype lock_or_pin, w.kgllkhdl address, decode(h.kgllkmod, 0, 'None', 1, 'Null', 2, 'Share', 3, 'Exclusive', 'Unknown') mode_held,原创 2020-11-13 16:59:34 · 201 阅读 · 0 评论 -
笔记:记录一次ORA-00001: unique constraint报错的处理
一次奇怪的主键冲突故障故障现象:在insert插入数据时报错ERROR at line 1:ORA-00001: unique constraint (XXXXX.SYS_C0055916) violated问题分析:检查是否该表存在相关主键数据select id from xxxx.xxxx where id='************************';检查发现不存在该id,故考虑不是数据重复导致。经过查询,怀疑是表结构发生了什么问题(暂未找到问题,因为没有错误信息)对表原创 2020-09-29 16:53:59 · 1441 阅读 · 0 评论 -
笔记:Windows 10安装Oracle 11g客户端报错处理
Windows 10安装Oracle 11g 32bit客户端报错 INS-30131报错截图解决方法:1,配置TMP环境变量在系统配置里面找到temp和tmp变量,统一将其指向新的临时目录,如:E:\TEMP;上下的用户变量和系统变量都要改2,在DOS界面执行安装命令,跳过系统检测cmd进入dos界面(管理员身份)cd到客户端安装目录执行:setup.exe -ignorePrereq -J"-Doracle.install.client.validate.clientSupporte原创 2020-09-07 11:37:05 · 463 阅读 · 0 评论 -
笔记:数据库日志挖掘信息不完整
在进行的一次数据挖掘过程中,查询出的信息好多都不完整甚至是空的此时可以尝试打开最小附加日志ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;SELECT SUPPLEMENTAL_LOG_DATA_MIN FROM V$DATABASE;原创 2020-08-12 15:49:03 · 252 阅读 · 0 评论 -
笔记:审计表查询
知识点:1,Audit_sys_operations:默认为false,当设置为true时,所有sys用户(包括以sysdba, sysoper身份登录的用户)的操作都会被记录,audit trail不会写在aud表中,这个很好理解,如果数据库还未启动aud表中,这个很好理解,如果数据库还未启动aud表中,这个很好理解,如果数据库还未启动aud不可用,那么像conn /as sysdba这样的连接信息,只能记录在其它地方。如果是windows平台,audti trail会记录在windows的事件管理中原创 2020-08-04 11:37:46 · 394 阅读 · 0 评论 -
笔记:恢复ADG
说明:adg出现故障需要重建adg时使用记录:源库:备份数据库rman target / << EOFrun {allocate channel c1 type disk;原创 2020-07-31 10:53:51 · 362 阅读 · 0 评论 -
笔记:物理Standby搭建时恢复报错RMAN-03002 RMAN-06026 RMAN-06100
说明:在进行physical standby搭建过程中,使用rman恢复灾备库,出现报错RMAN-03002 RMAN-06026 RMAN-06100,无法正常恢复数据库。错误信息:RMAN> RMAN-03090: Starting restore at 2020-07-31 09:40:32RMAN-06009: using target database control file instead of recovery catalogRMAN-08030: allocated ch原创 2020-07-31 10:13:09 · 718 阅读 · 0 评论 -
笔记:Windows环境下sqlplus本地登录报错 insufficient privileges 权限不足
记录一次Windows下数据库本地使用sqlplus / as sysdba登录时出现ORA-01031insufficient privileges 权限不足报错的问题处理1,检查监听配置文件sqlnet.orasqlnet.ora 认证服务从NONE改为NTSSQLNET.AUTHENTICATION_SERVICES= (NTS)注意这里windows使用nts、linux使用all2,检查用户权限打开windows用户组管理,把安装Oracle的用户添加到ORA_DBA用户组里再原创 2020-07-20 13:41:20 · 652 阅读 · 0 评论 -
Windos下安装Oracle Client的一次报错:无法访问临时位置
在一次安装Oracle数据库客户端软件的过程中,出现先决条件无法达成的报错,查看日志信息发现:。从中不难看出,出现的报错的原因是 无法访问临时位置。现贴出在网上查出的解决方法,已做记录在windows下,cmd进入安装目录进行安装安装目录\setup.exe -ignorePrereq -J"-Doracle.install.client.validate.clientSupporte...原创 2019-04-24 15:43:22 · 569 阅读 · 0 评论 -
记录一次ORA-01031权限不足的报错,用户具备dba权限
收到一次很奇怪的报错,用户在具备dba权限的情况下,创建视图出现ora-01031 权限不足的报错,情景如下:1,创建测试用户create user test identified by test;2,赋权grant resource,connect,dba to test;3,登录用户查看权限conn test/testSQL> select * from user_sys_...原创 2019-04-25 16:15:56 · 2087 阅读 · 0 评论 -
两条sql作用的记录---(Dynamic Sampling)
在一次ORA-01555报错处理中,出现两条sql语句SELECT /* DS_SVC */ /*+ dynamic_sampling(0) no_sql_tune no_monitoring optimizer_features_enable(default) no_parallel result_cache(snapshot=3600) OPT_ESTIMATE(@"innerQuery",...原创 2019-04-28 10:13:20 · 1332 阅读 · 0 评论 -
Oracle密码大小写敏感
控制Oracle密码大小写敏感的参数是sec_case_sensitive_logon默认为true开启关闭可使用ALTER SYSTEM SET sec_case_sensitive_logon=FALSE SCOPE=BOTH;另外,数据库对象大小写不敏感比如创建一个表 test1,此时你在查询时,可以使用表名:Test1 TEst1 TESt1 tEst1 teS...原创 2019-04-29 10:03:18 · 1131 阅读 · 0 评论 -
Oracle DG Switchover
switchover三部曲:1,切换前数据库环境,旧金山的主库及波士顿的备库2,切换中,两个备库3,切换完成,主备角色转换原创 2019-04-29 12:26:58 · 563 阅读 · 1 评论 -
笔记:查看Oracle数据库字符集
数据库的字符集(props$):select * from nls_database_parameters客户端字符集(v$parameter)select * from nls_instance_parameters会话字符集(v$nls_parameters)select * from nls_session_parameters...原创 2019-05-07 11:26:27 · 16195 阅读 · 1 评论 -
笔记:KFED ASM磁盘头工具
在oracle中提供了一个程序kfed用来查看ASM磁盘头部信息。此程序位于ORACLEHOME/bin目录下,如果没有可以按照以下方法生成kfed程序:进入ORACLE_HOME/bin目录下,如果没有可以按照以下方法生成kfed程序:进入ORACLEHOME/bin目录下,如果没有可以按照以下方法生成kfed程序:进入ORACLE_HOME/rdbms/lib下,执行make -f ins...原创 2019-05-07 15:26:16 · 855 阅读 · 0 评论 -
笔记:ADRCI 告警日志查看
oracle版本 11gR2在oracle用户下执行adrci可以进入到里面 adrci工具允许你查看问题和事件 并将它们打包传给oracle support[oracle@oracle11g trace]$ adrciADRCI: Release 11.2.0.1.0 - Production on Fri Feb 28 21:04:31 2014Copyright (c) 1...原创 2019-05-07 15:29:03 · 454 阅读 · 0 评论 -
笔记:格式化输出跟踪文件 tkprof
Tkprof是一个用于分析Oracle跟踪文件并且产生一个更加清晰合理的输出结果的可执行工具。如果一个系统的执行效率比较低,一个比较好的方法是通过跟踪用户的会话并且使用Tkprof工具使用排序功能格式化输出,从而找出有问题的SQL语句。一. TKPROF 命令语法:TKPROF filename1, filename2 [ SORT = [ opion][,option] ] [ P...原创 2019-05-07 15:37:49 · 249 阅读 · 0 评论 -
Oracle常用sql语句记录 持续更新
常规表空间使用率查询select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss' ) from dual ;prompt ##########TABLESPACEset linesize 120set pagesize 10000col TABLESPACE format a20 SELECT A.TABLESPACE,A.tota...原创 2019-05-07 15:47:45 · 1196 阅读 · 2 评论 -
ADRCI的常规操作介绍
ADRCI简介ADRCI全称 Automatic Diagnostic Repository Command Interpreter,是Oracle在11g提出的一个管理诊断数据的命令行工具。诊断数据包括事件和问题描述、trace文件、dumps文件、HM(Health Monitor)报告和alert日志记录等。ADRCI具有下面三个功能:1, 查看ADR中的诊断数据;2, 查看HM...原创 2019-05-07 16:01:35 · 2519 阅读 · 0 评论 -
笔记:关于oracle用户密码输入失败次数的记录
在生产中,我们常会去设置密码输入错误次数的限制,在profile里面设置FAILED_LOGIN_ATTEMPTS而此时我就开始想象,数据库是如何去计算的,今天抱了下大腿,才了解其中的奥秘1,密码错误是累计型的,累计次数够了,就会锁定2,密码错误累计次数重置密码后重新计数所以,无论你是用什么方式,无论你间隔多长时间,错误一次就累计一次,知道密码失效...原创 2019-05-08 16:17:11 · 1270 阅读 · 0 评论 -
记一次ora-7445 kkecpst()+824报错处理
报错信息:Mon May 20 22:02:49 2019Exception [type: SIGSEGV, Address not mapped to object] [ADDR:0x0] [PC:0x12CDA84, kkecpst()+824] [flags: 0x0, count: 1]Errors in file /u01/app/oracle/diag/rdbms/*****/*...原创 2019-05-21 10:57:02 · 499 阅读 · 0 评论 -
笔记:锁查询1
查询会话锁信息,持有与等待 column event format a30 column sess format a20 set linesize 150 break on id1 skip 1select decode(request,0,'Holder:',' Waiter:') || s.inst_id || ':' || s.sid||','|| s.serial# ...原创 2019-08-02 12:22:22 · 166 阅读 · 0 评论 -
笔记:记录一次搜集月活数据
建表CREATE TABLE A4LOG.A4_LOG_ACTIVE_MOUTH ( "CLIENTID" VARCHAR2(38) DEFAULT sys_guid(), "CLIENTIP" VARCHAR2(36), "ENTERTIME" DATE, "USERID" NVARCHAR2(100), "SSDWDM" NUMBER(...原创 2019-10-22 15:45:50 · 167 阅读 · 0 评论