转载

你可能不知道的MySQL“隐藏”参数

话说当年学Oracle数据库时知道O中有些隐藏的参数,感觉掌握这些隐藏参数后自己的逼格倏地上了个档次。不过随着自己技能不断的get,Inside君发现那只不过是无所大用的“绣花剑”,遇到独孤九剑也就漏洞百出。不少从O转到MySQL数据库的DBA会问Inside君,MySQL中有没有这样的隐藏参数,通常我的回答都是:“没有”,因为我不想让DBA们专注于这些“无用”的招数。这就好像风清扬使越女剑当可无敌于天下,岳灵珊得到思过崖五岳前辈们的绝妙剑法,在嵩山封禅台上秀了回剑法,最终却落得被二、三流水准的木高峰给擒获。

冒着被雷劈的风险,多年后Inside君打算秀一下MySQL中“无用的隐藏参数”。在Inside君的定义中,MySQL隐藏参数是指在命令SHOW VARIABLES亦或在表GLOBAL_VARIABLES中查询不到的参数,但是又是可以写在配置文件中的参数, 最重要的是 这些参数大多没什么用处。Inside君抛砖引玉,给一个隐藏参数show-slave-auth-info,该参数可以用来查看连接到MASTER服务器的SLAVE用户名密码。比如:

mysql> SHOW SLAVE HOSTS/G *************************** 1. row ***************************  Server_id: 330       Host: 10.166.224.34       User: root   Password: 123       Port: 3309  Master_id: 130 Slave_UUID: e59e03ac-cd6b-11e5-83b9-fa163e6b8e01 *************************** 2. row ***************************  Server_id: 230       Host: 10.166.224.33       User: root   Password: 123       Port: 3309  Master_id: 130 Slave_UUID: 63f09ccc-cd6a-11e5-8749-fa163e8c278a 2 rows in set (0.00 sec)

命令SHOW SLAVE HOSTS是在MySQL 5.0版本中引入,用来查看连接到当前服务器的从机信息(从机需要显式的配置上参数report-*)。默认配置下不会显示列User和Password,但若在MySQL配置文件中显式的配置了 show-slave-auth-info = 1 ,那么就会得到如上所示的结果。简单说来,这个参数可以让MASTER知道得知登陆到SLAVE服务器的用户名和密码,至于是否有用,就看小伙伴们能否发挥自己的想象力了。不过站在内核开发人员的角度,Inside君倒是觉得此处可以挖掘下。

回到最早的一个观点,Inside君觉得隐藏参数大多没什么用,MySQL数据库和Oracle数据库都是如此,没有必要过于的纠结于这些技能的提升。Inside君所主办的 2016年MySQL技术嘉年华会 将在4月24日开始,邀请了目前还在一线的MySQL技术专家,打造最有态度,最有干货的MySQL技术分享。Inside君坚信,只有这样高质量的数据库大会才能对数据库整体的水平会有提示。更重要的是,门票业界良心价,3月1日前仅299元,还等什么呢?赶快 购票 吧。

原文  http://www.innomysql.net/article/25350.html
正文到此结束
Loading...