level 6
系统:ubantu虚拟机 mysql版本:5.7.7-rc
万能的大神 请教一下:
1.怎样使mysql关闭autocommit是系统级别生效而不是session级别的?
使用 set autocommit='OFF' 只能对该session有效 另开一个session 查询该参数还是自动提交的
2.修改my.cnf文件增加 init_connect='SET autocommit=0'也是不能生效
刚刚学习mysql 问题可能很low 请各位大神多多包含!!
2016年05月25日 08点05分
1
level 6
现在autocommit已经设置成了OFF为何我不进行commit的时候另外session查询还是更新了
session1:
mysql> show variables like '%autocommit';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| autocommit | OFF |
+---------------+-------+
1 row in set (0.01 sec)
mysql> select * from zdr_myisam_autoincre;
+---+------+
| i | name |
+---+------+
| 1 | 1 |
| 2 | 2 |
| 3 | 3 |
+---+------+
3 rows in set (0.05 sec)
mysql> update zdr_myisam_autoincre set i=4 where i=3;
Query OK, 1 row affected (0.03 sec)
Rows matched: 1 Changed: 1 Warnings: 0
mysql> select * from zdr_myisam_autoincre;
+---+------+
| i | name |
+---+------+
| 1 | 1 |
| 2 | 2 |
| 4 | 3 |
+---+------+
3 rows in set (0.01 sec)
session2:
mysql> select * from zdr_myisam_autoincre;
+---+------+
| i | name |
+---+------+
| 1 | 1 |
| 2 | 2 |
| 4 | 3 |
+---+------+
3 rows in set (0.00 sec)
mysql> show variables like '%autocommit';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| autocommit | OFF |
+---------------+-------+
1 row in set (0.01 sec)
2016年05月26日 07点05分
4
level 9
你都使用的是myisam引擎的表了,怎么会用到事务commit呢。
2016年05月26日 08点05分
5
嗯 明白了!看书上说myisam是表锁 innodb是行锁 所以想insert数据试验一下 非常感谢您的解答!!
2016年05月26日 15点05分