mysqlbinlog 在 Google 云 SQL MySql 中不起作用
mysqlbinlog doesn't work in Google Cloud SQL MySql
我在 Google 云 SQL 上有 MySql 个实例。我启用了二进制日志。我可以查看日志文件,如下所示。
mysql> SHOW BINARY LOGS;
+------------------+-----------+-----------+
| Log_name | File_size | Encrypted |
+------------------+-----------+-----------+
| mysql-bin.000001 | 1375216 | No |
| mysql-bin.000002 | 7336055 | No |
+------------------+-----------+-----------+
我也可以在日志文件中查看事件。
mysql> SHOW BINLOG EVENTS IN 'mysql-bin.000001' limit 5;
+------------------+-----+----------------+-----------+-------------+-------------------------------------------------------------------+
| Log_name | Pos | Event_type | Server_id | End_log_pos | Info |
+------------------+-----+----------------+-----------+-------------+-------------------------------------------------------------------+
| mysql-bin.000001 | 4 | Format_desc | 883641454 | 124 | Server ver: 8.0.18-google, Binlog ver: 4 |
| mysql-bin.000001 | 124 | Previous_gtids | 883641454 | 155 | |
| mysql-bin.000001 | 155 | Gtid | 883641454 | 234 | SET @@SESSION.GTID_NEXT= 'd635d876-06de-11eb-b2ab-42010a9d0043:1' |
| mysql-bin.000001 | 234 | Query | 883641454 | 309 | BEGIN |
| mysql-bin.000001 | 309 | Table_map | 883641454 | 367 | table_id: 81 (mysql.heartbeat) |
+------------------+-----+----------------+-----------+-------------+-------------------------------------------------------------------+
但是当我使用 mysqlbinlog
命令时它给我错误。
mysql> mysqlbinlog mysqld-bin.000001;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'mysqlbinlog mysqld-bin.000001' at line 1
我不明白这里出了什么问题。请帮忙。
- 在云端shell 安装:
sudo apt-get install mysql-server
mysqlbinlog -R --protocol TCP --host localhost --user root --password --port 3306 mysqld-bin.000001;
我在 Google 云 SQL 上有 MySql 个实例。我启用了二进制日志。我可以查看日志文件,如下所示。
mysql> SHOW BINARY LOGS;
+------------------+-----------+-----------+
| Log_name | File_size | Encrypted |
+------------------+-----------+-----------+
| mysql-bin.000001 | 1375216 | No |
| mysql-bin.000002 | 7336055 | No |
+------------------+-----------+-----------+
我也可以在日志文件中查看事件。
mysql> SHOW BINLOG EVENTS IN 'mysql-bin.000001' limit 5;
+------------------+-----+----------------+-----------+-------------+-------------------------------------------------------------------+
| Log_name | Pos | Event_type | Server_id | End_log_pos | Info |
+------------------+-----+----------------+-----------+-------------+-------------------------------------------------------------------+
| mysql-bin.000001 | 4 | Format_desc | 883641454 | 124 | Server ver: 8.0.18-google, Binlog ver: 4 |
| mysql-bin.000001 | 124 | Previous_gtids | 883641454 | 155 | |
| mysql-bin.000001 | 155 | Gtid | 883641454 | 234 | SET @@SESSION.GTID_NEXT= 'd635d876-06de-11eb-b2ab-42010a9d0043:1' |
| mysql-bin.000001 | 234 | Query | 883641454 | 309 | BEGIN |
| mysql-bin.000001 | 309 | Table_map | 883641454 | 367 | table_id: 81 (mysql.heartbeat) |
+------------------+-----+----------------+-----------+-------------+-------------------------------------------------------------------+
但是当我使用 mysqlbinlog
命令时它给我错误。
mysql> mysqlbinlog mysqld-bin.000001;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'mysqlbinlog mysqld-bin.000001' at line 1
我不明白这里出了什么问题。请帮忙。
- 在云端shell 安装:
sudo apt-get install mysql-server
mysqlbinlog -R --protocol TCP --host localhost --user root --password --port 3306 mysqld-bin.000001;