上周问答集萃(9月13日-9月21日)
由于目前问答平台问题较多,问答集萃改为每周更新,并同时公布【采纳榜单】及【优秀提问者名单】。
我们定期从墨天轮问答平台上用户遇到的数据库问题中整理出一些常见问题和诊断总结,供大家参考学习,详细的诊断分析过程可以通过点击标题链接查看。
1、现在openGauss推荐的单表最大记录数大概是多少?如果有超过这个记录的table,该采取怎样的分库分表策略??
解答: 查看技术文档
单表32TB,超过这个限制怕是困难吧。即使有超过的,分表策略不是根据业务决定吗,例如一年前的数据归档历史表。(JiekeXu)
2、 安装oracle 11G rac需要多个网络地址,如何配置地址?
解答: 安装 rac 以两节点为例,至少需要 7 个 IP 地址,两块网卡,公网 public 一块,私网 private 一块。(JiekeXu)
#public ip 192.168.75.128 jiekexu-r1 192.168.75.129 jiekexu-r2 #private ip 10.10.10.128 jiekexu-r1-priv 10.10.10.129 jiekexu-r2-priv #vip 192.168.75.130 jiekexu-r1-vip 192.168.75.131 jiekexu-r2-vip #scanip 192.168.75.132 jiekexu-racscan
复制
3、 从oracle迁移到postgresql,表结构不同,如何迁移?
解答: 首先,肯定得映射oracle与postgresql的字段类型。然后你可以采用土办法,从oracle导出表结构,然后人工替换修改。或者你自己写SQL,将建表语句摘出来将类型替换成postgresql对应的数据类型,然后将语句导出。或者还有一些会java的自己写个映射转换的代码,或者让供应商提供工具呗。(不太冷)
4、 AWR分析报告问题求助:隐含参数的必要性?之前很多专业解答是通过优化sql或者业务逻辑来降低CPU资源消耗,提升数据库性能
解答: 隐含参数可以理解为 oracle 的内部参数,一般不需要使用,根据实际情况来判断!
如果数据库运行正常,当然可以不加隐含参数,但是如果出现一些bug或者需要进行一些优化,不可避免的需要用到隐含参数,那就必须要使用了。(Lucifer三思而后行)
解答: 可以试试 Swingbench 和 SLOB,就看你要压测的偏重是什么了。
下载地址分别如下:
https://www.dominicgiles.com/downloads.html
https://kevinclosson.net/slob
SLOB 数据库层面的简单压测,Swingbench 模拟应用层面的压测。有人推荐,没玩过,可以自己摸索试试。(JieKeXu)
解答:
SELECT to_timestamp( to_char( to_number( substr( '7879090F010101', 1, 2 ), 'xx' ) - 100, 'fm00' ) ||
to_char( to_number( substr( '7879090F010101', 3, 2 ), 'xx' ) - 100, 'fm00' ) ||
to_char( to_number( substr( '7879090F010101', 5, 2 ), 'xx' ), 'fm00' ) ||
to_char( to_number( substr( '7879090F010101', 7, 2 ), 'xx' ), 'fm00' ) ||
to_char( to_number( substr( '7879090F010101',10, 2 ), 'xx' )-1, 'fm00' ) ||
to_char( to_number( substr( '7879090F010101',12, 2 ), 'xx' )-1, 'fm00' ) ||
to_char( to_number( substr( '7879090F010101',14, 2 ), 'xx' )-1, 'fm00' ), 'yyyymmddhh24miss' ) FROM DUAL;
TO_TIMESTAMP(TO_CHAR(TO_NUMBER(SUBSTR('7879090F010101',1,2),'XX')-100,'FM00
---------------------------------------------------------------------------
15-SEP-21 03.15.00.000000000 PM
复制
来自TOM大师的脚本。不过你是不是没截全?应该是16位。(章芋文)
https://asktom.oracle.com/pls/apex/f?p=100:11:0::::p11_question_id:595616200346060960
解答: 21是大版本。后面是小版本。
12c就是12.0.1
18c就是12。0.2
19c就是12.0.3
以前11g也有11.0.2.3和11.0.2.4(薛晓刚)
8、当 File-per-table tablespaces 是关闭的 mysql 可以指定用户默认的通用表空间吗?
解答: 这个强烈建议你打开。否则默认是建立到ibdata中,越来越大。即使删除表,也不释放空间。这个从5.6以后就是默认开了。(薛晓刚)
解答:
a.从AIX OS CD-ROM引导;
b.按F1进入SMS(System Management Services)
c.在系统安装和维护(Installation and Maintenance)
d.菜单下选择3(Start Maintenance Mode For System Recovery)
e.选择Obtain a shell by activating the root volume group并按提示继续;
d.选择第一个选项;
f. 输入命令:#passwd 根据提示输入root密码
g.输入命令:# sync;sync;sync;reboot 来重启系统(Lucifer三思而后行)
解答: 可以自己写个触发器,然后结合其他监控平台或者短信平台实现告警信息推送,也可以通过监控工具进行定制,开源的如zabbix、Prometheus等,也可以通过结合审计工具,定制触发机制,实现监控。(始于脚下)
本期“墨力问答计划”最佳提问者名单公布:
本期“墨力问答计划”采纳榜单公布:
墨力问答计划正在如火如荼进行中,丰富平台问题、解救广大暂陷数据库困境的数据人,需要我们共同的努力。
成为优秀提问者指南:https://www.modb.pro/db/105726
墨力问答计划:https://www.modb.pro/db/100800