mysql 設定禁止autocommit

huzhichengforce發表於2015-03-05
1、set autocommit=off 設定回話級別的禁止
2、要設定全域性的可以通過三種方式
i set global init_connect='set autocommit=0';
ii 在初始化引數檔案中設定
在[mysqld]                                           
加入init_connect='set autocommit=0'
iii 在mysql 啟動的時候加引數
–init_connect='SET autocommit=0'

實驗一:
[root@mysql mysql]# mysql -uroot -p1qazxsw2----super 使用者登入設定全域性
mysql> set global init_connect="set autocommit=0";
Query OK, 0 rows affected (0.00 sec)
mysql> exit
Bye
[root@mysql mysql]# mysql -uhuzhicheng -phuzhicheng---普通使用者進去查詢是否生效
mysql>  show variables like 'autocommit';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| autocommit    | OFF   |
+---------------+-------+
1 row in set (0.00 sec)
mysql> exit
Bye
[root@mysql mysql]# /etc/init.d/mysql stop
Shutting down MySQL..                                      [  OK  ]
[root@mysql mysql]# /etc/init.d/mysql start
Starting MySQL.                                            [  OK  ] -----重啟資料庫
[root@mysql mysql]# mysql -uhuzhicheng -phuzhicheng
mysql> show variables like 'autocommit';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| autocommit    | ON    |-------------設定的全域性無效
+---------------+-------+
1 row in set (0.00 sec)
mysql> 
以上說明 設定全域性的是隻在伺服器啟動期間有效重啟後失效,而且super 使用者設定後對super使用者是無效的。
實驗2:修改引數檔案

重啟資料庫
[root@mysql mysql]# /etc/init.d/mysql stop
Shutting down MySQL..                                      [  OK  ]
[root@mysql mysql]# /etc/init.d/mysql start
Starting MySQL.                                            [  OK  ]
[root@mysql mysql]# mysql -uhuzhicheng -phuzhicheng
mysql> show variables like 'autocommit';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| autocommit    | OFF   |----針對普通使用者有效
+---------------+-------+
1 row in set (0.00 sec)
mysql> exit
Bye
[root@mysql mysql]# mysql -uroot -p1qazxsw2
mysql> show variables like 'autocommit';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| autocommit    | ON    |------針對supper使用者無效
+---------------+-------+
1 row in set (0.00 sec)

mysql> 
實驗三:
帶命令列引數啟動暫時還不會 突突...........................

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26764973/viewspace-1449816/,如需轉載,請註明出處,否則將追究法律責任。

相關文章