mysql不重启的情况下修改参数变量_Mysql

通常来说,更新mysql配置my.cnf需要重启mysql才能生效,但是有些时候mysql在线上,不一定允许你重启,这时候应该怎么办呢?

看一个例子:

mysql> show variables like 'log_slave_updates';

+-------------------+-------+
| Variable_name     | Value |
+-------------------+-------+
| log_slave_updates | OFF   |
+-------------------+-------+
row in set (0.00 sec)
mysql> set global log_slave_updates=1;

ERROR 1238 (HY000): Variable 'log_slave_updates' is a read only variable

看到了吧?报错了!

后来查了一下资料,发现有一个叫gdb的东西,感觉相当牛X,可以实现在线更改mysql参数,请看例子:
mysql> system gdb -p $(pidof mysqld) -ex "set opt_log_slave_updates=1" -batch
mysql> show variables like 'log_slave_updates';
+-------------------+-------+
| Variable_name     | Value |
+-------------------+-------+
| log_slave_updates | ON    |
+-------------------+-------+
row in set (0.00 sec)
但是在一些可重复的参数,不能直接用set更改,那这时候又要怎么办呢?老外给了一个解决方案:

复制代码 代码如下:

mysql> show slave status \G
...
Replicate_Do_DB: test
...
mysql> system gdb -p $(pidof mysqld)
-ex 'call rpl_filter->add_do_db(strdup("hehehe"))' -batch
mysql> show slave status \G
...
Replicate_Do_DB: test,hehehe
...

时间: 2024-09-14 14:01:45

mysql不重启的情况下修改参数变量_Mysql的相关文章

mysql字段设置某种情况下的特殊值

问题描述 mysql字段设置某种情况下的特殊值 是这样的,上传视频转码成功后url设置到videochangeurl字段,但是有不成功的情况,现在前辈想设置成false,这个字段是varchar类型的,而且前端页面判断是否转码失败jstl的话eq 'false',看着也奇怪,我心里觉得设置false不适合,但是又不好反抗前辈,就算反抗人家也根本不理会你,本着对自己负责,学习的态度,问问大家,这种情况怎么处理好. ps:看了前两个回答,补充下,如果不上传视频的话,没视频的话为为空的,要区别开没不上

酷狗在不启动的情况下修改登录端口教程

给各位酷狗软件的使用者们来详细的解析分享一下酷狗在不启动的情况下修改登录端口的教程. 教程分享: 在windows的运行那里输入regedit进入注册表编辑器,找到登录端口:hkey_current_user\software\kugoo3\udpport,双击打开,选十进制,改成7000或其他.   好了,以上的信息就是小编给各位酷狗的这一款软件的使用者们带来的详细的酷狗在不启动的情况下修改登录端口的教程解析分享的全部内容了,各位看到这里的软件使用者们,小编相信大家现在那是非常的清楚教程了吧,

Linux系统下修改环境变量PATH路径的三种方法

  电脑中必不可少的就是操作系统.而Linux的发展非常迅速,有赶超微软的趋势.这里介绍Linux的知识,让你学好应用Linux系统.比如要把/etc/apache/bin目录添加到PATH中,方法有三: 1.#PATH=$PATH:/etc/apache/bin 使用这种方法,只对当前会话有效,也就是说每当登出或注销系统以后,PATH 设置就会失效 2.#vi /etc/profile 在适当位置添加 PATH=$PATH:/etc/apache/bin (注意:= 即等号两边不能有任何空格)

mysql修改参数变量设置的一些方法总结

登陆mysql数据库系统中,用show processlist分析查看当前运行状态. mysql> show processlist; +-–+-----+------–+ | Id | User | Host | db | Command | Time| State | Info +-–+-----+------–+ |207|root |192.168.0.2:51621 |mytest | Sleep | 5 | | NULL |208|root |192.168.0.2:51622 |m

CentOS在不重启的情况下为其虚拟机添加新硬盘的教程

  通常在你在虚拟机中添加一块新硬盘时,你可能会看到新硬盘没有自动加载.这是因为连接到硬盘的SCSI总线需要重新扫描来使得新硬盘可见.这里有一个简单的命令来重新扫描SCSI总线和SCSI设备.下面这几步在CentOS 7 和RHEL 7 中测试过. 在ESXi或者vCenter中添加一块新的20G硬盘: 显示当前磁盘分区: 代码如下: [root@centos7 ~]# fdisk -l Disk /dev/sda: 32.2 GB, 32212254720 bytes, 62914560 se

MySQL在关联复杂情况下所能做出的一些优化_Mysql

昨天处理了一则复杂关联SQL的优化,这类SQL的优化往往考虑以下四点:     第一.查询所返回的结果集,通常查询返回的结果集很少,是有信心进行优化的:     第二.驱动表的选择至关重要,通过查看执行计划,可以看到优化器选择的驱动表,从执行计划中的rows可以大致反映出问题的所在:     第三.理清各表之间的关联关系,注意关联字段上是否有合适的索引:     第四.使用straight_join关键词来强制表之间的关联顺序,可以方便我们验证某些猜想: SQL: 执行时间: mysql> se

怎样在没有ps软件的情况下修改图片大小

首先,将自己要修改的图片找到,这时候鼠标右键编辑,这是会进入系统自带的画图工具. 这时候你就会看到画图框下面的像素大小例如我的这张图500*312 其次,就是我们来修改图片的大小,点击画图框上面的工具栏重新调整大小,然后点击像素. 第三步,修改我们想要的大小就可以了,我的修改大小是400的,然后确认就可以了 然后,这里还有一个功能我要和大家讲一下,就在主页面看到选择的工具可以对图片上的文字或者不用的东西进行删除,然后会删除的东西进行修复背景,还是选择背景框选,向左拉就可以了. 第四步如果是不同颜

Win2003不重启计算机情况下重新启动网卡的方法

方法一:使用netsh  代码如下 复制代码 RestartLan.bat 代码 rem 适用于Win2003 rem 把Win2003的ifmon.dll拷贝到WinXP以后WinXP也可以用 rem 禁用网卡 netsh interface set interface name="本地连接" admin=DISABLED rem 启用网卡 netsh interface set interface name="本地连接" admin=ENABLED 方法二:使用

Mysql LONGBLOB 类型存储二进制数据 (修改+调试+整理)_Mysql

在DBMS中线要创建数据库test,table bintest,data字段数据类型用LONGBLOB即可测试 //测试文件c:\\test.iso,你可以找任何一个文件修改为即可,我找的是一个exe程序,修改为test.iso而已 //最大测试过加入文件大小为650M(一个正真的iso文件) //注意:还要修改my.ini文件中的max_allowed_packet字段,我设置的是 复制代码 代码如下: //max_allowed_packet = 1024M //#define host "