14.oracle的dump理解十四 窥视内存

14.oracle的dump理解十四 窥视内存

欢迎转载,转载请标明出处:      http://blog.csdn.net/notbaron/article/details/51284582 

需要检查特定位置内存的内容,特定变量的内容。

       例如想知道SGA中,变量kcbnhb的内容(kcb是buffer cache,nhb是哈希桶的数字)

查看如下:

SQL> oradebug dumpvar sga kcbnhb

ub8 kcbnhb_ [14C2B8FA0, 14C2B8FA8) =00020000 00000000

查看会话某个变量的值:

SQL> oradebug dumpvar uga ugauso_p

qolprm ugauso_p [026FC2990, 026FC29B4) =00000000 00000000 00000000 00000000 000

00000 00000000 00000000 00000000 00000000

SQL> alter session setuse_stored_outlines=rule_based;

会话已更改。

SQL> oradebug dumpvar uga ugauso_p

qolprm ugauso_p [026FC2990, 026FC29B4) =00000001 5552000A 425F454C 44455341 000

00000 00000000 00000000 00000000 00000000

       查找SGA中的变量名字,可以查询结构x$ksmfsv,如下:

SQL> select * from x$ksmfsv where ksmfsnam like'kcbn%';

ADDR INDX INST_ID CON_ID KSMFSNAM KSMFSTYP KSMFSADR  KSMFSSIZ

000000014A13F3A0  4413 1    0 kcbnbh_ sword 000000014C2B4800    4

…………..

可以根据地址来查看变量值:

SQL> oradebug peek 0x000000014C2B4800    4

[14C2B4800, 14C2B4804) = 0000A870

第二个参数 4 表示显示的字节数。

如果知道内存地址,可以直接查看,命令如下:

SQL> select * from x$ksmmem whereaddr=hextoraw('14C2B4800');

如果使用x$ksmem进行查看没有映射的地址,会话会报错ORA-03113。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您好!关于 Oracle 数据库的导出,您可以使用 Oracle 提供的 EXP 工具来进行数据库的导出。EXP 是一个命令行工具,可以将整个数据库或者指定的表空间、用户等导出为一个二进制文件,也被称为 Oracle 数据库的备份文件或者导出文件。使用 EXP 工具可以方便地将数据库的结构和数据导出到其他环境中进行恢复或者迁移。 以下是使用 EXP 工具导出 Oracle 数据库的基本步骤: 1. 打开命令行终端或者命令提示符窗口。 2. 进入 Oracle 安装目录下的 bin 目录,例如:cd /u01/app/oracle/product/12.2.0/dbhome_1/bin。 3. 输入以下命令来执行导出操作: exp username/password@connect_string file=export.dmp 其中,username 是你要导出的数据库用户的用户名,password 是对应的密码,connect_string 是连接字符串,用于指定数据库的主机名、端口号和服务名等信息;file=export.dmp 是导出文件的路径和名称。 4. 执行命令后,EXP 工具会连接到数据库并开始导出操作。导出过程可能需要一些时间,具体时间取决于数据库的大小和复杂性。 5. 导出完成后,在指定的路径下会生成一个二进制的导出文件(.dmp 文件),这就是数据库的导出内容。 请注意,EXP 工具是 Oracle 过去版本的备份和导出工具,在较新的 Oracle 版本中,推荐使用更强大和灵活的 EXPDP 工具来进行数据库导出操作。EXPDP 工具提供了更多选项和功能,可以更好地满足不同的导出需求。 希望以上信息能够帮助到您!如果您有任何进一步的问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值