バックアップシェルコマンド:
‘mysqldump --column-statistics=0 --set-gtid-purged=OFF ' \
'-h{
ip} -u{
user} -p{
passwd} {
parameter} --add-drop-database --databases {
database} > {
backup_path}/{
database}_{
date}.sql’
-set-gtid-purged=off このパラメータは、gtid 機能が mysql5.6 の後に追加されたため、gtid エラーが報告されるのを防ぎます。これは、mysqldump の新しいバージョンが新しいフラグを有効にするため、この機能をオフにすることを意味します -column-statistics=
0
-R バックアップ ストアド プロシージャと関数を無効にするには、-column-statistics=0 を渡します(このパラメータを指定しないと、データベースの基本テーブルとビューのみがバックアップされます)。
データ復元:
①エラー 1231 (42000) 行 1125: 変数 'sql_mode' を 'NO_AUTO_CREATE_USER' の値に設定できません
sed -i 's/,NO_AUTO_CREATE_USER//g' ./database_2023-06-21.sql
②エラー 1418 (HY000) 行 3445: この関数の宣言には DETERMINISTIC、NO SQL、または READS SQL DATA のいずれも含まれておらず、バイナリ ログが有効になっています (安全性の低い log_bin_trust_function_creators 変数を使用することをお勧めします) 関数はバックアップ中にバックアップされまし
た、mysql8 .0 は binlog をオンにします。関数にパラメーター (log_bin_trust_function_creators) を指定する必要があります。参照元: https: //zhuanlan.zhihu.com/p/370169125
show variables like 'log_bin_trust_function_creators';
SET GLOBAL log_bin_trust_function_creators = 1;