- すべてのDDLにALGORITHM=INPLACE/COPY;を指定しないとINSTANTになるので実質無理 INSTANT ADDしたテーブルもOPTIMIZE TABLE実行すれば実行は可能だが... そもそもpercona-xtrabackup-80-8.0.29までしか出ていなくて8.0.30では実行できない https://www.percona.com/blog/percona-xtrabackup-8-0-29-and-instant-add-drop-columns/ [ERROR] [Xtrabackup] Found tables with row versions due to INSTANT ADD/DROP columns
クラスタステータスでプライマリがどのDBか確認 # mysqlsh -uroot -h MySQL1 MySQL JS> cluster = dba.createCluster('testcluster') A new InnoDB cluster will be created on instance 'root@MySQL1:3306'. MySQL JS> cluster.addInstance('root@MySQL2') MySQL JS> cluster.addInstance('root@MySQL3') MySQL JS> cluster.status() ~省略~ "primary": "MySQL1:3306", ~省略~
# mysqlrouter --bootstrap root@MySQL1 --user=mysqlrouter The following connection information can be used to connect to the cluster after MySQL Router has been started with generated configuration.. Classic MySQL protocol connections to cluster 'testcluster': - Read/Write Connections: localhost:6446 - Read/Only Connections: localhost:6447 ~省略~
Routerの設定は先ほどのClusterの手順と同じ # mysqlsh -uroot -h MySQL1 MySQL JS> dba.createReplicaSet("repl1") A new replicaset with instance 'MySQL1:3306' will be created. MySQL JS> dba.getReplicaSet().addInstance("root@MySQL2:3306”) MySQL JS> dba.getReplicaSet().addInstance("root@MySQL3:3306”)
MySQL2でコピー元となるMySQL1の情報をドナーリストに登録 CLONE実行 MYSQL1,2> INSTALL PLUGIN clone SONAME 'mysql_clone.so' MYSQL1,2> CREATE USER clone_user@"%" IDENTIFIED BY 'pass'; MYSQL1,2> GRANT BACKUP_ADMIN ON *.* TO clone_user@"%"; MySQL2> SET GLOBAL clone_valid_donor_list = 'MySQL1:3306'; MySQL2> CLONE INSTANCE FROM clone_user@MySQL1:3306 IDENTIFIED BY 'pass';
not a compiled character set and is not specified in the '/usr/share/mysql/charsets/Index.xml' file' on query. Default database: 'test'. Query: 'BEGIN’ default_authentication_pluginを変更していないと8.0→5.7でレプリエラー Error 'Plugin 'caching_sha2_password' is not loaded' on query. Default database: ''. Query: 'CREATE USER 'hoge'@'10.%.%.%' IDENTIFIED WITH 'caching_sha2_password' AS '$A$005$6R\'Cg;SVYYu*
塩漬けにしている MySQL 8.0.xxをバージョンアップしたくなる、ここ数年での MySQL 8.0の改善点 / MySQL Update 202208 MySQL Shellを使ってもっと楽をしようの会 Aurora MySQL long-term support (LTS) releases MySQL 8.0 で追加、非推奨または削除されたサーバーおよびステータスの変数とオプション Aurora MySQL バージョン 2 と 3 の特徴の違い Use the TempTable storage engine on Amazon RDS for MySQL and Amazon Aurora MySQL New temporary table behavior in Aurora MySQL version 3 MySQLのEXPLAIN ANALYZEの読み方を勉強したよ