- 博客(117)
- 收藏
- 关注
原创 桂花蛋制作
开水、盐、桂花、陈皮、桂皮、白芷、香叶、花椒、大料、生姜、葱、红糖、酱油、鸡蛋15枚。放凉,放入桂花,套上保鲜膜,入冰箱。加盐小火煮开,捞出放入凉水中。加水放红冰糖,起跑后放入开水。放入所有原料,开锅10分钟。凉水入锅,泡10分钟。
2025-04-27 00:00:00
90
原创 达梦并行收集统计信息
没enable前需要13分钟,开启4并行后4分钟收集完毕,从线程中可以看到是否并行,多了几个lpq线程。即使设置并行工作线程数为4。而实际使用的线程数可能只有3个,或者更少。但是默认没并行执行,需要再加个条件(基于当前参数)大库收集起来可能比较慢,想并行收集需要一些条件。
2025-04-25 00:15:00
328
原创 快速定位达梦缓存的执行计划并清理
开发告诉你一个sql慢,你想看看缓存中执行计划时,怎么精准快速定位?要快一点的技巧是增加几个条件:执行用户、表数量、列数量(最外层)可能一般人通过文本内容模糊搜索。加上些已知条件可快速一些。
2025-04-23 00:15:00
297
原创 来啦,烫,查询达梦表占用空间
想象一下oracle,可以查dba_segments,但是这个不可靠(官方连说明书都没有)统计大对象,肯定是很多人想要的。
2025-04-23 00:00:00
234
原创 吃点细糠,看看达梦执行计划各步骤的耗时
分析sql的执行计划,看出哪些地方慢,用什么方法?再来些细糠,通过sql_monitor展示。看来hash、排序算子不断演进。大部分时间在SSEK2。
2025-04-22 00:00:00
168
原创 selectdb修改表副本
如果想修改表的副本数需要首先确定是否分区表,当前没有数据字典得知哪个表是分区的,只能先show partitions看结果。可以指定某个分区为多个副本,其他分区为单副本。首先,副本数不应该大于be节点数。
2025-04-05 00:00:00
211
原创 查看达梦数据库对象
初学达梦,有时想知道某个对象是否存在,需要查看内部数据字典,oracle的都可通过dba_objects获取,但是达梦的需要拼凑一下。说明还有index_used_space、ts_used_space等。例如知道table_used_space函数,其他类似的还有哪些?
2025-03-31 00:00:00
269
原创 达梦改密码时不想看到明文
这里采用了SHA-512加密算法(看第2张图片中的蓝色箭头),长度为128字节,且密码一样的话加密后的PASSWORD内容也一样。有人可能想,开启了dmsql日志是不是能看到所有操作。至少在你旁边的人看不到你把密码改为什么了。这里很明显被掩盖为黑点了,放心输入即可。找到用户,点击右键,选择modify。最简单的是用manager工具。但不想让别人看到你的密码明文。dba_users就不行了。还好达梦也做了安全保护。有时,需要修改用户密码。这不,密码全被看到了。那到底密码是什么呢?
2025-03-27 00:00:00
362
原创 莫名奇妙的ORA-4030
检查近期活跃sql_id时,如果将日期范围改为3天也会触发这个ORA-4030,说明是共性问题。检查会话的执行计划发现是备库,只能通过display_cursor 看执行计划。看起来像是共享池空间不足。共享池、pga都很大。看起来内存使用也不高。
2025-03-27 00:00:00
241
原创 为什么不建议使用达梦dba_前缀的数据字典
开发过数据库的都知道,dba_前缀的数据字典都是由一些底层视图组成成。可以通过10046看吗,估计比较麻烦,还是用sql_monitor吧。想查数据字典还是得看sysobjects,对,这一个就够了。假如我想查二级分区索引,结果很慢,12秒才返回。就说第19步的最耗时。
2025-03-25 00:00:00
151
原创 丐版插入selectdb模拟
为了模拟不断插入数据到库里,写个简单的循环脚本。仅为验证数据插入是否报错或有明显的变慢情况。0.2是每次插入后延时0.2秒。
2025-03-25 00:00:00
169
原创 好吧好吧,看一下达梦的模式与用户的关系
单凭个人感觉,模式在达梦中属于逻辑对象合集,回头再看资料。知道schid在sysobjects中大有用途。问题来了,模式的ID和用户的ID一样吗?应该是一个用户可以对应多个模式。简洁版的查询无效索引。
2025-03-24 00:00:00
169
原创 5年前问题的答案,如何造统计信息
数据变化有规律的前提下,为了减少收集统计信息耗时或避免错过收集窗口,巧妙的办法是复制统计信息。如果不锁定,后期收集窗口会修改吗?
2025-03-06 00:15:00
176
原创 oracle游标为什么没有共享,统计一下原因
BIND_LENGTH_UPGRADEABLE:绑定长度可升级,并且无法共享,因为一个绑定变量大小小于正在插入的新值(在早期版本中被标记为BIND_MISMATCH)。ROLL_INVALID_MISMATCH:超过了滚动无效窗口。这是由DBMS_STATS的滚动无效功能引起的。因为它的无效窗口已经超过了,所以子游标不能被共享。BIND_MISMATCH:绑定元数据与现有的子游标不匹配。很清晰了,绑定变量不匹配。
2025-03-03 00:00:00
345
原创 a_init: Unable to get log name. Retval:[-4]是什么故障
你想直接echo>+ASM1_rbal_13057.trc 降低大小,不确定内存是否会降下来,可能会有其他风险,稳妥的dba不会这么干的。看来rba有些异常,按说只有添加、删除asm磁盘才会导致其干活,这个最近没有扩容asm磁盘组操作,按说不应该活跃。好了,重启一下数据库集群,然后可释放内存并减少trc文件大小(把老的删除即可)看到arbl进程占用11%,比对节点2同样如此,比对其他环境确很低。嗯,看来还是v$asm_disk_stat这个好,低成本。扫了一眼,比较幸运找到一个,看一下版本及症状。
2025-02-28 00:15:00
342
原创 靠腰嘞,达梦manager方块、乱码怎么办
通过MobaXterm连接达梦数据库服务器, 打算启动manager玩耍一下。将INSTALL_LANGUAGE从zh_CN改为en_US 后保存退出。其实是个shell脚本文件,然后用vi打开这个脚本。可见变回英文的了,至少大概能看懂。看看manager文件所在位置。变回中文的方式等等再说。再次打开manager。
2025-02-27 00:00:00
218
原创 达梦数据库版本,想搞清楚不容易
也就是说开发人员编译时在17号,然后经过打包测试后发布日期为22号。想试用一下达梦数据库,登录官网点击“达梦数据库管理系统”记住这里的文件名中日期显示20250122。but,数据库版本该如何登记和称呼呢?领导问:我们达梦数据库版本是什么?这里显示的日期为20250117。你告他:03134284336。建议先扣产品经理100元工资。安装后检查一下数据库版本。然后,点击“试用下载”选择后,下载了一个文件。
2025-02-24 00:00:00
240
原创 达梦存储过程执行后 sql日志信息粗读
我猜代表执行节点execute point的意思,可以理解为oracle的thread 或实例,默认从0开始,DSC(类似ORACLE的RAC环境)中会看到EP[1][SEL]这是sql的类型,可能有DML、SEL、INS、DEL等,也有可能是操作符,例如DLCK。根据日志输出,可见只记录存储过程最外层的执行情况,如果内部有事务才输出相关信息。sql执行句柄,同一会话的不同sql还是一样的(有点像sess_id)事务id,即使查询也分配一个事务id,如果会话内开启一个事务则会增加1。
2025-02-20 00:00:00
753
原创 改变oracle执行计划,狸猫换太子
试验通过DBMS_SPM包来替换执行计划。红色箭头是慢的,绿色箭头是优化后的。通过hint优化后获得新执行计划。
2025-01-31 00:00:00
372
原创 显示当前绑定变量
当用户修改变量后再执行时可能捕获不到,绑定变量并不会全部记录,而是采样方式记录,受_cursor_bind_capture_interval隐含参数控制。测试两个变量的情况(实际可以看6个,可根据需要修改)看到当前两个绑定变量的值是SYS 和50。如果清理执行计划,重新执行(发生了硬解析)sql_id 和执行计划如下。默认是900秒捕获一次。来自v$sql中的信息。
2025-01-31 00:00:00
242
原创 展示统计信息收集情况
可以看到某个对象(通常是变化超过10%的表或索引才被收集)开始收集时间和结束时间。前面是索引,后面是表的收集情况。看看最近是否收集失败。
2025-01-29 00:15:00
327
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人