oracle basic
林震南
笨小孩,攒钱,投资,争取早日财务自由,回老家教书育人
展开
-
关于戴伟的回忆
第一次认识daiwei,是在csdn,当时在oracle板块,我当时工作中有遇到许多oracle的问题,在板块发帖,请求大家帮忙,daiwei就踊跃的回复,帮我分析问题,我也是受益颇多的,非常感谢他,他后来慢慢的oracle专家分也是一直在上涨,最终好像当上oracle的版主。后来他持续专供oracle板块,逐渐成了oracle的专家之一,不管管理还是开发,都精梳无比,我很是佩服,而且还参加了原厂的交流会议,跨洋过海的,原厂全程赞助,在论坛羡煞了无数人,也包括我在内,都在努力愿意获得这样的机会。..原创 2021-12-04 22:43:41 · 2820 阅读 · 0 评论 -
Linux设置VNC远程桌面连接来安装Oracle11G
前言:在linux下面进行oracle安装,需要启动java的swing界面,所以需要x-window窗口,那么就需要直接去服务器机房去现场操作挺麻烦,远程xshell无法视窗,这种情况下可以采用vnc的模式远程连接linux系统的视窗来进行远程安装oracle。1,先检查一下服务器是否已经安装了VNC服务,没有安装,检查服务器的是否安装VNC的命令如下[root@powerlong5 rpm...原创 2019-07-02 13:45:20 · 10316 阅读 · 0 评论 -
TNS-12535: TNS:operation timed out以及TNS-00505: Operation timed out的处理
序言:查看alert日志,发现很多报错信息:[oracle@localhost trace]$ more alert_powerdes.log******************************************************************************************************************************...原创 2019-07-02 14:27:42 · 13007 阅读 · 0 评论 -
ORACLE 11G 中采用rman备份异机恢复数据库详细过程
场景:有一个生产库的用户下面所有的表都不见了,怀疑人为被删除了,现在需要用备份去恢复下,找出原来的表,线上是oracle dataguard环境,有全库备份文件,准备去测试库恢复一下。1,从生产库上copy好全备份文件恢复数据库需要准备的文件:rman完整备份(包括数据文件、日志文件、控制文件、参数文件),记录源数据库的DBID安装的测试数据库ORACLE数据库软件并创建跟源...原创 2019-07-02 14:27:50 · 10899 阅读 · 0 评论 -
ORACLE 11G 中没有参数文件和控制文件如何通过rman恢复数据库
场景:一个DEV告诉我生产环境下某个用户的表都看不到了,需要恢复,而此时生产库上存储自动备份的参数文件控制文件的磁盘目录文件坏块,所以导致rman备份的只有数据文件和归档日志文件,这种情况下,如何在测试服务器上利用rman恢复数据呢?google了很多资料,咨询了朋友,恢复过程如下:前期准备工作:事先查询好先查询下原来的数据文件路径SQL> select nam...原创 2019-07-02 14:27:58 · 10252 阅读 · 0 评论 -
Sqlserver2000连接Oracle11G数据库进行数据实时同步
Sqlserver2000连接Oracle11G数据库进行数据实时同步1,前提条件已经有sqlserver2000环境,已经存在oracle11g环境,准备这两个数据库,建立各自的访问账号,两者之间需要ping通,telnet端口也要能通,目的是将sqlserver里面的数据自动同步到oracle数据库里面去。Sqlserver里面有链路服务器(linked server)可以实现...原创 2019-07-03 13:42:51 · 10526 阅读 · 0 评论 -
ORA-00257: archiver error. Connect internal only. until freed
1,plsq登录报错ORA-00257: archiver error. Connect internalonly. until freed2,后台alert日志报错:[oracle@powerlong4 ~]$ tail -fn 200/oracle/app/oracle/diag/rdbms/pdunq/powerdes/trace/alert_powerdes.log...原创 2019-07-05 10:00:53 · 10274 阅读 · 0 评论 -
ORA-00257: archiver error.Connect internalonly, until freed 后续之 delete force
前言--现象描述远程plsq登录报错“ORA-00257: archiver error.Connect internalonly, until freedalert后台日志报错:Errors in file/oracle/app/oracle/diag/rdbms/pdunq/ptext/trace/ptext_arcc_19603.trc:ORA-19809: lim...原创 2019-07-05 10:01:02 · 10232 阅读 · 0 评论 -
ORACLE 记录连接用户的IP地址以及登录失败用户的IP地址
前言:实现的功能主要是,oracle登录成功记录登录用户ip地址,登录失败记录登录失败ip地址1,需要建立一个触发器记录登录成功的客户端用户的ip地址大家都知道在v$session 中记录着客户端的机器名称,但是没有IP , 如果记录clinet ip 呢?先运行DBMS_SESSION 过程包注册,然后执行存储过程on_logon_trigger,这样当客户端登陆后,在...原创 2019-07-05 10:06:08 · 12503 阅读 · 0 评论 -
ORACLE 11G在同一台linux服务器从实例1全库导入到实例2上
前期导出命令:[root@powerlong4 ~]# su - oracle[oracle@powerlong4 ~]$ export ORACLE_SID=pt1;[oracle@powerlong4 ~]$ expdp \'sys/systestpd as sysdba\' DIRECTORY=dir_dump_t3 FULL=YES DUMPFILE=expdpfull_pd_201...原创 2019-07-06 08:50:38 · 10306 阅读 · 0 评论 -
ORACLE数据库性能优化之--内存磁盘
1,内存结构优化概述1.1 缓冲区影响数据库运行性能的缓冲区包括可以共享的SGA和服务器进程私有的pga两大类,其中sga又包括共享池、大型池、java池、数据缓冲区、流池、redo log缓冲区。1.2 自动内存管理oracle一般采用自动内存管理来管理系统内存,由oracle自动管理和调整数据库实例的内存大小。在自动管理模式下,首先对初始化参数MEMORY_TARGET(...原创 2019-07-07 10:36:49 · 10886 阅读 · 4 评论 -
ORACLE 在重要的表上限制某些IP、用户的恶意操作
1,问题描述 oracle默认账号是没有限制ip的,这样的隐患就在于,如果我知道了oracle账号用户名密码,我只要能连接到db,就可以对db进行操作,这样对于线上的db来说是很危险的,因为有些非dba人员,比如开发人员、测试人员一不小心误删除了线上的数据,就惨了,坑太大不敢看。所以查了查,找到一种办法,在一些重要的表上加触发器来限制用户对线上db的表的操作。2,触发...原创 2019-07-07 15:11:27 · 10261 阅读 · 0 评论 -
ORACLE 11g用户权限管理随笔精髓
总结工作中经常用到一些用户管理随笔记录:1、查看数据库里所有用户各自拥有的角色:select * from (select distinct connect_by_root grantee username,granted_rolefrom dba_role_privsconnect by prior granted_role =grantee ) awhere exists (sele...原创 2019-07-07 17:50:19 · 10349 阅读 · 0 评论 -
oracle11g在linux系统下开机自启动设置
oracle服务器一般来说最好是手动启动,这样碰到问题的话,可以现场解决,但是也担心有时候机器故障,自动重启后,为了快速恢复应用,需要自动开机启动oracle,而且发现在不同的os下,启动的设置都不太一样1,centos操作系统下,可以这样设置直接在rc.local里面添加[root@localhost ~]# vim /etc/rc.local touch /var/lock/subsy...原创 2019-07-08 13:39:56 · 10604 阅读 · 0 评论 -
oracle11g系统级别触发器来跟踪监控drop误操作
前言:db中有一张表的数据老是紊乱,猜猜是经历过drop、create的数据同步操作,但是现在谁也不知道在哪里操作的,所以准备做一个触发器去记录下是哪个应用服务器那个db账号操作的。3,系统级别触发器3.1 触发事件包括各种DDL操作以及各种数据库事件,ddl包括create、alter、drop、rename、grant、revoke、audit、noaudit、commit、trunc...原创 2019-07-08 13:40:17 · 10441 阅读 · 0 评论 -
Oracle中su切换进去sqlplus登录失败的问题处理
问题描述:生产环境的oracle数据库突然登录不上去了,rlwrap生产环境的oracle数据库突然登录不上去了,rlwrap sqlplus "/ as sysdba"报错如下:rlwrap[oracle@localhost root]$ rlwrap sqlplus "/ as sysdba"rlwrap: warning: your $TERM is 'xterm' but rlwrap...原创 2019-07-02 13:28:26 · 11451 阅读 · 0 评论 -
Oracle 数据迁移(从Oracle11G高版本迁移到Oracle10G低版本)
1,数据库状况 生产环境是11G,linux系统,测试环境是10G,windows系统,需要从生产环境导出一个用户下所有的数据,导入测试环境中。 因为数据量比较小,准备采用EXP和IMP工具来做。 2,在生产环境上导出用户数据 命令: exp \'system/syspl as sysdba\' owner=PLAS buffer=10240000 F...原创 2019-06-30 00:56:43 · 10264 阅读 · 0 评论 -
plsql7连接oracle11G看不到jobs列表的问题
领导说oracle升级到11G之后,连接上了oracle库,但是通过plsql打开,点击jobs栏,里面没有显示出已经创建的jobs列表,我问了下他的plsql版本,他说是plsql7.1.5。google之后,得出一下结论:plsql7系列版本的界面的jobs选项是去查询 user_jobs表的记录。但是plsql8以后系列版本界面的jobs选项是去查询user_scheduler_job...原创 2019-06-22 10:58:13 · 11192 阅读 · 0 评论 -
oracle11g dataguard 环境配置汇总
1,master库1.1 参数文件initpowerdes.ora[oracle@oracle_master1 ~]$ cd $ORACLE_HOME/dbs[oracle@oracle_master1 dbs]$ vim initpowerdes.orapowerdes.__db_cache_size=322961408powerdes.__java_pool_size=419430...原创 2019-07-14 06:55:02 · 10171 阅读 · 0 评论 -
oracle11g 在112G内存中如何使用hugepage提高性能
1,关于HugepageHugePage广泛启用开始于Kernal 2.6,一些版本下2.4内核也可以是用。在操作系统Linux环境中,内存是以页Page的方式进行分配,默认大小为4K。如果需要比较大的内存空间,则需要进行频繁的页分配和管理寻址动作。HugePage是传统4K Page的替代方案。顾名思义,是用HugePage可以让我们有更大的内存分页大小。无论是HugePag...原创 2019-07-17 00:03:22 · 10746 阅读 · 0 评论 -
oracle11g 一条几百行行的sql语句 优化 需要适可而止才行
1,同事报告了一条非常复杂的sql,说很慢,叫我优化下。很慢的sql,也很长有几百行吧,^_^,如下: select bm2.bis_must_id, bm2.qz_year_month, bm2.money, bm2.adjust_money, bm2.bis_cont_id, ...原创 2019-07-20 11:57:12 · 10533 阅读 · 0 评论 -
oracle11g rman备份文件失踪之谜
1,rman备份文件失踪之谜备份文件消失了,每天自动备份后,会删除前一天的备份文件,如下所示,这是怎么回事呢?[root@earth_dbm1 data]# du -sh *......12K 2016-06-2612K 2016-06-2712K 2016-06-2812K 2016-06-2912K 2016-06-304.4G 2016-07-014.4...原创 2019-07-22 13:55:10 · 10196 阅读 · 0 评论 -
ORACLE 从一个实例迁移到另外一个实例实战记录
ORACLE跨schema的数据迁移测试环境服务器不够,而同事需要新的oracle环境,把生产环境的数据拉一份过来搭建内部的系统跑;这个实例使用频率不高而且需要的资源不是很多,所以准备在原有的负载不高的oracle服务器上,重新开一个新的实例,这样可以节省数据库服务器资源。1、DBCA建库 使用DBCA在linux上建立第二个oracle实例,具...原创 2019-07-24 11:45:23 · 10698 阅读 · 0 评论 -
ORACLE 11g 控制文件
1,查看已经备份的控制文件RMAN> list backup of controlfile;specification does not match any backup in the repository2,启动控制文件自动备份RMAN> configure controlfile autobackup on;old RMAN configuration parame...原创 2019-07-30 11:17:06 · 10275 阅读 · 0 评论 -
ORACLE 11g 修改db_unique_name参数
1,查看原有的db_unique_name信息SQL> show parameter name;NAME TYPE VALUE------------------------------------ ----------- ------------------------------db_file_name_convert stringdb_name...原创 2019-07-30 14:13:05 · 13401 阅读 · 0 评论 -
ORACLE 11g 实现审计用户登入登出<登陆退出>的详细记录
需求就是需要记录用户登陆登出的记录,包括时间以及连接ip地址以及连接方式等等,这样有助于跟踪分析问题,特别是一些人为无意识的dml操作导致数据丢失、数据混乱的问题追踪,还是非常有效的。大家知道oracle库开启了审计audit后,肯定有办法查到问题,但是审计比较消耗资源,所以可以通过触发器之类的来间接实现这个功能。1、建记录表-- Create tabl...原创 2019-07-30 14:13:25 · 10520 阅读 · 0 评论 -
ORACLE 云上准备预发布环境
今天领导需要将某天的备份恢复过来到临时库,因为线上采用的是rman备份,所以会有rman备份集合,但是rman出来的备份集合,每次恢复过程中都会出现各种各样的细节问题,都记录下来,以备后来参考,大概流程是(1)copy备份集合到临时库;(2)关闭临时库(3)恢复控制文件(4)注册备份集合目录(5)restore database、recovery database;(6)o...原创 2019-07-31 11:01:51 · 10168 阅读 · 0 评论 -
ORACLE 给用户授权truncate table 的实现方案
1,对其它用户下的表执行trundate table操作开发说在用dwetl下执行调用shop用户下的表的时候提示没有权限操作,google了查了下,发现oracle账户没法直接赋予对某个表的truncate权限,那要怎么来实现呢?在shop用户下面,准备测试数据SQL> create table Z_TRUNCATE_T(ID number);Table created.SQ...原创 2019-07-31 11:03:04 · 13227 阅读 · 0 评论 -
Oracle 如何规范清理v$archived_log记录
单机实例上面,v$archived_log 很多,有上万条记录了,所以得清理一下,不然每次查询都直接滚屏幕了SQL> select sequence#,applied from v$archived_log order by sequence# ; SEQUENCE# APPLIED.................... SEQUENCE# APPLIED---------- ...原创 2019-08-01 19:13:19 · 10730 阅读 · 0 评论 -
Oracle drop table 和 truncate table对grant授权的影响
1、以sys登陆,建表赋予权限,准备测试表z2[oracle@crl ~]$ rlwrap sqlplus / as sysdbaSQL*Plus: Release 11.2.0.4.0 Production on Tue May 16 14:59:27 2017Copyright (c) 1982, 2013, Oracle. All rights reserved.Conne...原创 2019-08-01 19:13:29 · 11158 阅读 · 0 评论 -
Oracle 11G 监控单张表的增删改操作
前言:线上oracle数据库有张表的数据有些乱,根据应用db的log和应用的log也没有检查出来谁修改了,所以决定把这张单表做个详细的insert、update、delete监控。一:使用数据库自带的审计功能1,查看审计功能是否启动SQL> show parameter audit ...原创 2019-06-30 00:56:28 · 2028 阅读 · 0 评论 -
Oracle将字符编码从GBK转到UTF8会产生哪些后果,如何操作比较稳妥?
朋友问:有个学校oracle数据库的编码是GBK,而且库里边已经有很多生产数据了,现在想改成UTF8的,如果执行了这步操作,会出现哪些问题?我的回答:因为utf8的库中文占3个byte,gbk占2个byte,所以会出现客户端乱码。比较稳妥的方案是,再搭建一个oracle环境,设置成utf8编码,把旧的oracle数据迁移到新的utf8编码的oracle库中的环境。o...原创 2019-06-21 22:46:57 · 11082 阅读 · 0 评论