通过user profile限制管理帐号的资源使用
通过user profile限制管理帐号的资源使用,create profile admin_user limit sessions_per_user 50 cpu_per_session unlimited cpu_per_call 3000 connect_time 30 idle_time 20 logical_reads_per_session default logical_reads_per_call 1000; alter user admin profile admin_user; alter system set resource_limit=true scope=both;每个参数的含义如下[@more@]How To Calculate The Blocks
AIX上挂NAS,有kill不掉的进程
AIX上想挂个NAS,mount命令hang在那,ctrl+c强制结束,退到命令行,ps -ef 可以看到后台进程还在跑,kill不掉。如下:dbserver:/@root>#ps -ef |grep bak root 2650184 1 0 21:10:16 pts/2 0:00 /sbin/helpers/nfsmnthelp M 0 nas-server /vx/fs01 /bak1 root 1442092 1 0 18:07:50 - 0:00 /sbin/helpers/nfsmnthelp M 0 nas-server /vx/fs01 /bak1 root 1610142 1 0 18:10:42 - 0:00 /sbin/helpers/nfsm
奇怪的ora-12154
前两天从10.2.0.4到11.2.0.1.0升级了一个库,主库升级完打开,在主库重建密码文件传到备库,备库以11g的环境变量打开升级。结果发现主库一直报这个错:Error 12154 received logging on to the standbyErrors in file /u01/diag/rdbms/test/test/trace/test_arc0_7115.trc:ORA-12154: TNS:could not resolve the connect identifier specifiedPING[ARC0]: Heartbeat failed to connect to standby 'test_stb'. Error is 12154.tnsping可以通,sqlplus 去连备库也没有问题。重启备库没有解决,临时使用脚本去做register.最终这个问题是重启
limit active sessions
Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 /* Style Definitions */ table.MsoNormalTable {mso-style-name:普通表格; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan;
测试一下11gr2的active dataguard
测试一下11gr2的active dataguard首先与原来10g一样,standby 跟上主库的归档,Media Recovery Waiting for thread 1 sequence 278 (in transit)然后在standby以只读打开后,启动日志恢复。SQL> recover managed standby database cancel;Media recovery complete.SQL> alter database open read only;Database altered.SQL> recover managed standby database disconnect using current logfile;Media recovery complete.[@more@]主库创建一个表SQL> create table t as select * from adult;Table created.SQL> select *
后台跑脚本替代crontab
crontab是个不错的东西,但他可能会在一个脚本未结束时又启动了同样的脚本。最大的问题是他每次都要读脚本、编译、然后执行。这样很耗CPU。我们可以这样替代: # main execution blockwhile (1) { runTask() sleep 60;}[@more@]在UNIX下我们常把脚本放在crontab里调用,如* * * * * /opt/application/bin/batch1.pl * * * * * /opt/application/bin/process.pl /tmp/foo * * * * * /opt/application/bin/process.pl /tmp/bar * * * * * /opt/application/bin/submit.pl crontab是个不错的东西,但他可能会在一个脚本未结束时又
BBED的使用
ningoo有两篇bbed的文章不错,按此做了下实验,也遇到了些问题至今无解。 介绍bbed: http://www.ningoo.net/html/2009/how_to_link_oracle_bbed_tools.html 查块结构:http://www.ningoo.net/html/tag/bbedbbed的使用及案例看这个:http://orafaq.com/papers/dissassembling_the_data_block.pdf[@more@]在9i/10g中连接生成bbed:cd $ORACLE_HOME/rdbms/libmake -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed在11g中生成bbed,需要先从10g中复制如下文件到相应目录,然后再执行上述连接命令:$ORACLE_HOME/rdbms/lib/ssbbded.o$ORACLE_HOME
IDENTIFIER: 864D2CE3 NIM thread blocked
#errptIDENTIFIER TIMESTAMP T C RESOURCE_NAME DESCRIPTION864D2CE3 0920030307 P S topsvcs NIM thread blocked[@more@]摘自http://zhsumin.itpub.net/post/8419/399295IBM主机2节点HA运行Oracle 10.2,OS errpt报错:NIM thread blocked错误信息:#errptIDENTIFIER TIMESTAMP T C RESOURCE_NAME DESCRIPTION864D2CE3 0920030307 P S topsvcs NIM thread blocked#]errpt -aj 864D2CE3 ---------------------------------------------------------------------------LABEL: TS_NIM_ERROR_STUCK_IDENTIFIER
online/offline 表空间和数据文件需谨慎!
1、不要想把表空间备份,然后删除再restore回来。因为删除时控制文件里不再包含表空间的信息,RMAN备份信息放在控制文件的话,也一块儿没了。RMAN backup tablespace后,drop tablespace 无法再Restore回来,必须restore database(上一次的全备)。 2、10.2的alter tablespace drop datafile 不一定有效。已经alter database datafile 72 offline drop的,不能再用。 SQL> alter database datafile '/u01/oradata/t03.dbf' offline; SQL> alter tablespace test drop datafile '/u01/oradata/t03.dbf'; alter table
mysql备份--mysqlhotcopy
mysqlhotcopy是一个Perl脚本,最初由Tim Bunce编写并提供。它使用LOCK TABLES、FLUSH TABLES和cp或scp来快速备份数据库。它是备份数据库或单个表的最快的途径,但它只能运行在数据库目录所在的机器上。mysqlhotcopy只用于备份MyISAM。它运行在Unix和NetWare中[@more@]摘自:http://hi.baidu.com/trunkey/blog/item/a3e4b4fa495dded9b58f3162.html我以前备份都使用mysqldump,导成文本文件便于存放,但是速度很慢的。 最快的备份方法当然是直接把数据目录copy一份了。但是一般来说,都要关闭 MySQL的服务才能做,不然在你copy的时候刚好
数据库运维工作内容
在我们团队里,DBA不是传统的数据库管理,包含OS,存储,数据库,备份软件,开发支持。包含的工作可能随时增减。 总结几个工作中的原则: /* Style Definitions */ table.MsoNormalTable {mso-style-name:普通表格; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New
分享后
前段时间跟部门分享了下存储方面的知识,虽然我们目前存储有不少,但也只有两三个人配置和规划存储。我从最基础的外观到配置、规划、性能快速讲了一遍,前后讲了一个多小时。之后一直不知道效果如何。 前天刚好有个CX700要重新划分,我给一个参加过培训但从没接触过存储的新人两套老存储看看之前的划分方法,再给个新的划分规划,然后就被他给划分好了。虽有些细节没顾及,但也不太影响,我很满意。 硬件的这些东西接触过一次,以后配置就没问题了,更多的是考虑如何根据应用来规划存储。使磁盘在合适的地方发挥最好的性能。相信
AIX 文件系统的loglv
通常,如果你的数据库装在/u01目录,为防止单一硬盘坏掉导致数据库crash,你一定不会忘记对/u01对应的LV做镜像 容易忽略的是,每个文件系统有个loglv,这个可以从/etc/filesystems看到详细信息。[@more@]/opt: dev = /dev/hd10opt vfs = jfs2 log = /dev/hd8 mount = true check = true vol = /opt free = false/u01: dev = /dev/lv_u01 vfs = jfs2 log
linux裸设备操作
1、linux如何绑定裸设备?两种方式: 1)命令绑定 raw /dev/raw/raw[n] /dev/xxx 其中n的范围是0-8191。raw目录不存在可以创建。执行这个命令,就会在/dev/raw下生成一个对应的raw[n]文件用命令方式绑定裸设备在系统重启后会失效。 2)修改文件修改/etc/sysconfig/rawdevices文件如下,以开机时自动加载裸设备,如: /dev/raw/raw1 /dev/sdb1 这种方式是通过启动服务的方式来绑定裸设备。也可以把这个命令写在/etc/rc.local上,使每次启动都执行这些命令。 2、如何知道当前绑定了什么裸设备? raw -qa命令列出当前绑定的所有裸设备。 3、如
每个季度前几天都要搞出点事
前天我们DMX存储扩容,我在停掉存储所在备库,exportvg后便通知厂家可以动存储了。忘了主库还有个日志成员写在这个存储上。主库每个日志组有两个成员,一个是本地存储,一个是远程存储(就是我们要扩盘的存储)。本来一个日志成员不可写对数据库来说也没有问题,但主库的压力比较大,还是造成了影响。 晚上存储搞好了,我们要重建ZONE,认盘和restore备库。有一哥们看错,误删了主库的ZONE。数据库直接crash了,收到短信报错我才知道。进去看所有的LUN链路都已failed。赶紧把ZONE建回来,数据库因此down了十来分钟。前台应用因为堵塞
10G删除空数据文件
sys@ORCL>alter tablespace users drop datafile2 '/u01/app/oracle/oradata/orcl/users02.dbf'; 对于DataGuard,不能使用这个命令,否则redo会坏掉使得备库要重做。到10204还需打上Genernal Bundle。[@more@]作者 :OoNiceDream【转载时请务必以超链接形式标明文章原始出处和作者信息】链接:http://www.dbaroad.com/archives/2009/05/10g_drop_datafile.html Oracle 9I、10G都可以采用:Alter database datafile file_name offline drop;来删除数据文件,但当数据文件为非空时,存放在该数据文件上的数据就无法读据了:SYS@sky> a
AIX pvid混乱,修改PVID与VGID
本来应该要hdiskpower73属于vg_db2,hdiskpower144属于vg_db4,现在发现hdiskpower73和hdiskpower144实际上好像是同一块盘,无法分别在两个VG里。怎么解决?[@more@]问题现象db176:/@root>#reducevg -d vg_db4 hdiskpower73db176:/@root>#powermt remove dev=hdiskpower73db176:/@root>#powermt remove dev=hdiskpower144db176:/@root>#cfgmgrdb176:/@root>#powermt displaySymmetrix logical device count=180CLARiiON logical device count=0Hitachi logical device count=0Invista logical device count=0HP xp logical
AIX 内存监控
vmstat -v 可以输出内存的一个现状。其中的num perf,num client,free page,等等相关的数据,都可以给aix当前的内存做一个概况的描述。vmstat -S M (1024为基数的) vmstat -S m (1000为基数的)vmstat 2 10[@more@]情景一:vmstat 2 10 System configuration: lcpu=2 mem=2048MB kthr memory page faults cpu----- ----------- ------------------------ ------------ -----------r b avm fre re pi po fr sr cy in sy cs us sy id wa0 0 124259 361350 0 0
IPCS ipcrm删除信号量
ipcs -a ipcrm -q MessageID //删除消息队列ipcrm -m SharedMemoryID //删除共享内存段ipcrm -M SharedMemoryKeyipcrm -s SemaphoreID //删除信号量[@more@]#ipcs -aIPC status from /dev/mem as of Mon Apr 27 16:11:11 BEIST 2009T ID KEY MODE OWNER GROUP CREATOR CGROUP CBYTES QNUM QBYTES LSPID LRPID STIME RTIME CTIME Message Queues:q 0 0x4301f06d --rw-rw-rw- root system root system 0 0 4194304 0 0 no-entry no-entry 1:43:34q 1 0x4101f06d --rw-rw-rw- root system root system 0 0 4194304 926238 164682 2:43:47 2:4
10G rman CATALOG BACKUPPIECE
在9i时代,如果在控制文件或者catalog数据库中的备份信息被覆盖或者清除,那么即使所有的备份文件都在,rman也无法简单的利用这些文件来做恢复了,必须得用些特别的方法才能办到,比如以前很多牛人写的使用dbms_backup_restore包从备份片中释放出数据文件,然后再使用手工方式做恢复。但是实际上,oracle完全可以将恢复时需要的一些信息保存在备份文件的文件头中,如果控制文件或者catalog数据库中的信息丢失,再扫描一遍文件头,取出这些信息就可以了。转自:http://www.ningoo.net/html/2007/oracle10g_rman_catalog_command.html[@more