Mysql のデフォルトの自動トランザクション自動コミットのクローズおよびオープン モード、ロールバックおよびリカバリ データの使用方法


autocommit は自動的に物事を送信します

MySQL 默认开启事务自动提交模式の場合、各 SOL ステートメントは個別のトランザクションとして自動的に実行されます。しかし、そうしなければならない場合もあります关闭事务自动提交来保证数据的一致性

1. 自動コミットステータスの表示

コマンドにより: SHOW VARIABLES LIKE 'autocommit';

1.OFF:閉状態
ここに画像の説明を挿入

結果は、autocommit の値が OFF であることを示し、システムがシャットダウン モードであることを示しています。
2.ON:オープン状態

ここに画像の説明を挿入

結果は、autocommit の値が ON であることを示します。これは、システムが自動コミット モードをオンにすることを意味します。

2. 自動コミットステータスを変更する方法

1. 最初の方法

MySQL では、SET autocommit ステートメントを使用してトランザクションの自動コミット モードを設定できます。構文は次のとおりです。

1SET autocommit = 0|1|ON|OFF;

SET autocommit=1和SET autocommit=ON:表示开启autocommit自动提交事务

SET autocommit=0和SET autocommit=OFF::表示关闭autocommit自动提交事务

自動コミット ステータスを変更する上記の操作は、この ssh 接続セッションでは有効ですが、新しく開かれたセッションでは無効になります。

2. mysql 設定ファイル my.cnf を変更します。

mysql で自動コミット トランザクションを永続的に閉じるには、mysql 設定ファイル my.cnf を変更して autocommit=0 または autocommit=OFF を追加します: [ mysqld
]
autocommit=OFF
または
[mysqld]
autocommit=0
以上两者添加任意一个即可永久关闭mysql数据库默认的事务提交

次に、再起動コマンドを使用します: service mysqld restartmysql データベース サービスを再起動し、 を使用しますSHOW VARIABLES LIKE 'autocommit'。永久に閉じるには自動コミット ステータスを確認します。

2、ロールバック ロールバック

1. 自動コミットが有効になっている

autocommit =ON トランザクションがオープンしています

ここに画像の説明を挿入
当mysql数据库默认的自动提交事务打开的状态下,对数据库进行操作后使用rollback回滚无法恢复操作前的数据

1. 自動コミットをオフにする

ここに画像の説明を挿入
autocommit =OFF コミットトランザクションは閉じられます。

ここに画像の説明を挿入
自动事务被关闭,mysql数据库操作后使用rollback回滚可以进行恢复

おすすめ

転載: blog.csdn.net/m0_67929156/article/details/131617442