关于 mysqlpump 的故事,它是 mysqldump 的后继工具,使转储变得有趣
你好。
我叫Mandai,负责为开发团队提供免费材料。
虽然我进入这个游戏已经很晚了,但我尝试使用 mysqlpump,它是 mysqldump 的后继者,所以我为那些还没有使用过它的人整理了一些推荐点。
正如您对后继者所期望的那样,它的设计对那些从 mysqldump 迁移的人很友好,基本选项如何使用它是相同的,所以我希望您尝试一下。
它的好处是它包含在 MySQL 中。
仅此一点就值得切换到进度显示
我这次尝试的数据库最多也就200MB左右,所以并没有太大的好处,但是mysqlpump会一步步显示转储的进度。
mysqlpump -uroot -p --databases xxxxx > xxxxx_20XX0X0X.sql 输入密码: 转储进度:1/6 个表,0/352 行 转储进度:73/145 个表,551291/1274767 行 转储在 2073 毫秒内完成
基本命令如下所示。
乍一看,好像是写错了?我认为是 mysqldump。
当我尝试使用 mysqldump 转储相同的数据库时,mysqlpump 有点慢。
我不禁对此感到有点失望,但在这个容量下,它大约是 0.2 秒,所以可以肯定地说这是一个误差范围。
可以选择压缩输出文件
转储文件通常会被压缩,无论是备份还是传输到另一台服务器进行复制。
在这一点上,mysqlpump可以选择以压缩状态输出,因此不需要麻烦的后处理。
mysqlpump -uroot -p --compress-output=LZ4 --数据库 xxxxx > xxxxx_20XX0X0X.lz4
您可以使用 --compress-output 选项选择压缩格式。
然而,唯一支持的格式是 LZ4 和 openssl zlib,这两种格式很少见。
尴尬的是,我想知道openssl zlib是什么,当我查找它时,我发现它是一个zip文件。
zip 没什么乐趣,所以我尝试将它与 LZ4 合并,但现在我想知道如何解压缩它。
我找到的是MySQL 文档。
LZ4格式似乎是Linux标准支持的压缩格式,并且提供了解压命令。
lz4_解压缩xxxxx_20XX0X0X.lz4 xxxxx_20XX0X0X.sql
就这样。而且很长。
我想请求类似于解压缩的东西。
除了这样的抱怨之外,您还可以通过简单地输入 mysql 命令来导入通过回答问题而创建的文件。
mysql -uroot -p < xxxxx_20XX0X0X.sql
说到文件压缩,大家都会关心压缩率,但LZ4在压缩率方面似乎并没有太大优势,压缩速度似乎才是关键。
不过压缩率好像没那么差,所以我在使用mysqlpump的时候考虑暂时使用LZ4格式。
可以并行处理
并行处理的概念与mysqldump有很大不同。
然而,阅读文档后,似乎除非您了解mysqlpump的转储处理,否则您无法有效地使用它。
使用 --default-parallelism 选项指定要启动的线程数。默认值为 2。
mysqlpump -uroot -p \ --default-parallelism=4 \ --databases xxxxx \ > xxxxx_20XX0X0X.sql
使用 --parallel-schemas 选项创建队列并指定哪个队列应处理哪个表。
mysqlpump -uroot -p \ --parallel-schemas=xxxxx \ --parallel-schemas=yyyyy \ > xxxxxyyyyy_20XX0X0X.sql
现在您可以在单独的线程中处理 xxxxx 和 yyyyy 表。这很容易。
此外,您可以使用 --default-parallelism 选项指定处理队列的线程数。
mysqlpump -uroot -p \ --default-parallelism=4 \ --parallel-schemas=xxxxx \ --parallel-schemas=yyyyy \ > xxxxxyyyyy_20XX0X0X.sql
在上面的示例中,创建了两个队列,每个队列由四个线程处理。
请记住,为每个表创建一个队列是一个好主意,如果可以很好地分配处理负载,则可能会缩短执行时间。
起初,我认为在进行此类计算时可以转储数据,但似乎这个想法是让大表和小表在单独的队列中处理。
由于 --parallel-schemas 选项允许您指定同时启动的线程数,因此也可以偏置线程数。
mysqlpump -uroot -p \ --parallel-schemas=2:xxxxx \ --parallel-schemas=4:yyyyy \ > xxxxxyyyyy_20XX0X0X.sql
该命令意味着使用 2 个线程转储 xxxxx 表,使用 4 个线程转储 yyyyy 表。
尝试转储时出现奇怪的错误
当我第一次运行它时,出现了一个无法理解的错误,我很紧张,所以我将其发布在这里作为备忘录。
mysqlpump -uroot -p --databases xxxxx > xxxxx_20XX0X0X.sql 输入密码:mysqlpump: [警告] (1356) 查看“sys.host_summary”引用无效的表或列或函数或定义者/调用者缺乏使用它们的查看权限 mysqlpump: [警告] (1356) 查看“sys.host_summary_by_file_io”引用无效的表或列或函数或查看权限的定义者/调用者使用它们 mysqlpump: [警告](1356)视图“sys.host_summary_by_file_io_type”引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限mysqlpump:[警告](1356)视图“sys”。 host_summary_by_stages'引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限mysqlpump:[警告](1356)视图'sys.host_summary_by_statement_latency'引用无效的表或列或函数或定义者/调用者缺乏使用它们的查看权限 mysqlpump: [警告] (1356) 查看“sys.host_summary_by_statement_type”引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump: [警告] (1356) 视图“sys.innodb_buffer_stats_by_schema”引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限使用它们mysqlpump:[警告](1356)视图'sys.innodb_buffer_stats_by_table'引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限mysqlpump:[警告](1356) )视图“sys.innodb_lock_waits”引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump:[警告](1356)视图“sys.io_by_thread_by_latency”引用无效表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump: [警告] (1356) 视图“sys.io_global_by_file_by_bytes”引用无效的表或列或视图的函数或定义者/调用者缺乏使用它们的权限 mysqlpump: [警告] (1356) 视图“sys.io_global_by_file_by_latency”引用无效的表或列或函数或定义者/调用者视图缺乏使用它们的权限 mysqlpump: [警告] (1356) 视图 'sys.io_global_by_wait_by_bytes' 引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump : [警告](1356)视图“sys.io_global_by_wait_by_latency”引用无效的表或列或函数,或者缺乏使用它们的视图权限的定义者/调用者 mysqlpump:[警告](1356)视图“ sys.latest_file_io'无效引用表或列或函数或视图权限的定义者/调用者缺乏使用它们mysqlpump:[警告](1356)视图'sys.memory_by_host_by_current_bytes'引用无效表)或列或函数或视图权限的定义者/调用者缺乏使用它们mysqlpump:[警告](1356)视图'sys.memory_by_thread_by_current_bytes'引用无效的表或列或函数( s) 或视图的定义者/调用者缺乏使用它们的权限 mysqlpump: [警告] (1356) 视图 'sys.memory_by_user_by_current_bytes' 引用无效的表或列或函数或视图缺乏的定义者/调用者使用它们的权限 mysqlpump:[警告](1356)视图“sys.memory_global_by_current_bytes”引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump:[警告] (1356)视图“sys.memory_global_total”引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump:[警告](1356)视图“sys.processlist”引用无效的表或列或函数或缺乏使用它们的权限的定义者/调用者 mysqlpump: [警告] (1356) 查看“sys.schema_index_statistics”引用无效的表或列)或视图的函数或定义者/调用者缺乏使用它们的权限mysqlpump:[警告](1356)视图'sys.schema_table_lock_waits'引用无效的表或列或函数或定义者/视图的调用者缺乏使用它们的权限 mysqlpump: [警告] (1356) 视图“sys.schema_table_statistics”引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump :[警告](1356)视图'sys.schema_table_statistics_with_buffer'引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump:[警告](1356)视图' sys.schema_tables_with_full_table_scans'引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限mysqlpump:[警告](1356)视图'sys.session'引用无效的表(s) )或列或函数或查看权限的定义者/调用者使用它们mysqlpump:[警告](1356)查看'sys.statement_analysis'引用无效的表或列或函数) 或视图的定义者/调用者缺乏使用它们的权限 mysqlpump: [警告] (1356) 视图 'sys.statements_with_errors_or_warnings' 引用无效的表或列或函数或视图的定义者/调用者缺乏权限使用它们 mysqlpump: [警告] (1356) 视图 'sys.statements_with_full_table_scans' 引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump: [警告] (第1356章 1356章 1356章引用无效的表或列或函数或查看权限的定义者/调用者以使用它们mysqlpump:[警告](1356)视图'sys.statements_with_temp_tables'引用无效的表或列(s) )或函数或定义者/调用者的查看权限以使用它们 mysqlpump: [警告] (1356) 查看“sys.user_summary”引用无效的表或列或函数或定义者/调用者视图缺乏使用它们的权限 mysqlpump: [警告] (1356) 视图“sys.user_summary_by_file_io”引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump: [警告](1356)视图“sys.user_summary_by_file_io_type”引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump:[警告](1356)视图“sys” .user_summary_by_stages'引用无效的表或列或函数或视图权限的定义者/调用者缺乏使用它们mysqlpump:[警告](1356)视图'sys.user_summary_by_statement_latency'引用无效的表或列或函数或视图权限的定义者/调用者缺乏使用它们mysqlpump:[警告](1356)视图'sys.user_summary_by_statement_type'引用无效的表或列或函数) 或视图的定义者/调用者缺乏使用它们的权限 mysqlpump: [警告] (1356) 视图 'sys.wait_classes_global_by_avg_latency' 引用无效的表或列或函数或视图权限的定义者/调用者使用它们 mysqlpump: [警告] (1356) 查看“sys.wait_classes_global_by_latency”引用无效的表或列或函数或查看权限的定义者/调用者使用它们 mysqlpump: [警告] (1356)视图“sys.waits_by_host_by_latency”引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump:[警告](1356)视图“sys.waits_by_user_by_latency”引用无效的表。视图的(或多个)列或函数或定义者/调用者缺乏使用它们的权限 mysqlpump:[警告](1356)视图'sys.waits_global_by_latency'引用无效的表或列或函数或定义者/调用者缺乏使用它们的查看权限 mysqlpump: [警告] (1356) 查看“sys.x$ps_schema_table_statistics_io”引用无效的表或列或函数或定义者/视图的调用者缺乏使用它们的权限 mysqlpump: [警告] (1356) 视图“sys.x$schema_table_lock_waits”引用无效的表或列或函数或视图的定义者/调用者缺乏使用权限mysqlpump: [警告] (1356) 查看 'sys.x$schema_table_statistics' 引用无效的表或列或函数或查看权限的定义者/调用者使用它们 mysqlpump: [警告] (1356 )查看“sys.x$schema_table_statistics_with_buffer”引用无效的表或列或函数或定义者/调用者缺乏使用它们的查看权限 mysqlpump:[错误](1356)查看“sys.host_summary”无效的引用表或列或函数或视图权限的定义者/调用者无法使用它们转储过程遇到错误并且将无法继续。引用无效的表或列或函数或视图权限的定义者/调用者无法使用它们转储过程遇到错误并且将无法继续。引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且将无法继续。引用无效的表或列或函数或视图权限的定义者/调用者无法使用它们转储过程遇到错误并且将无法继续。引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且不会继续。引用无效的表或列或函数或视图权限的定义者/调用者无法使用它们转储过程遇到错误并且不会继续。引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且不会继续。引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且不会继续。引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且不会继续。引用无效的表或列或函数或视图权限的定义者/调用者无法使用它们转储过程遇到错误并且将无法继续。引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且不会继续。引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且将无法继续。引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且不会继续。引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且将无法继续。无效的引用表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且将无法继续。引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且将无法继续。引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且不会继续。引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且将无法继续。引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且将无法继续。引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且将无法继续。引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且将无法继续。引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且将无法继续。引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且将无法继续。引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且将无法继续。引用无效的表或列或函数或视图权限的定义者/调用者无法使用它们转储过程遇到错误并且将无法继续。引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且将无法继续。引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且不会继续。无效的引用表或列或函数或视图权限的定义者/调用者无法使用它们转储过程遇到错误并且不会继续:[错误](1356)查看'sys.statements_with_errors_or_warnings'。引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且不会继续。引用无效的表或列或函数或视图权限的定义者/调用者无法使用它们转储过程遇到错误并且不会继续。引用无效的表或列或函数或缺乏使用它们的权限的定义者/调用者转储过程遇到错误并且将无法继续:[错误](1356)查看“sys.statements_with_sorting”引用。无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且将无法继续:[错误](1356)查看“sys.statements_with_temp_tables”引用。无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且不会继续:[错误](1356)视图“sys.user_summary”无效。引用表或列或函数或查看权限的定义者/调用者缺乏使用它们转储过程遇到错误并且不会继续:[错误] (1356) 查看“sys.user_summary_by_file_io”引用。无效的表或列或函数或视图权限的定义者/调用者无法使用它们转储过程遇到错误并且不会继续:[错误] (1356) 查看“sys.user_summary_by_file_io_type”引用。无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且将无法继续:[错误](1356)查看“sys.user_summary_by_stages”引用。无效的表或列或函数或视图权限的定义者/调用者无法使用它们转储过程遇到错误并且不会继续:[错误] (1356) 查看“sys.user_summary_by_statement_latency”引用。无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且将无法继续:[错误](1356)查看“sys.user_summary_by_statement_type”引用。无效的表或列或函数或视图权限的定义者/调用者无法使用它们转储过程遇到错误并且将无法继续:[错误](1356)查看'sys.wait_classes_global_by_avg_latency'引用。无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且将无法继续:[错误](1356)查看'sys.wait_classes_global_by_latency'引用。无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且将无法继续:[错误](1356)查看“sys.waits_by_host_by_latency”引用。无效的表或列或函数或视图权限的定义者/调用者无法使用它们转储过程遇到错误并且不会继续:[错误] (1356) 查看“sys.waits_by_user_by_latency”引用。无效的表或列或函数或视图权限的定义者/调用者无法使用它们转储过程遇到错误并且不会继续:[错误] (1356) 查看“sys.waits_global_by_latency”引用。无效的表或列或函数或视图权限的定义者/调用者无法使用它们转储过程遇到错误并且将无法继续。 ' 引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且将无法继续。 $schema_table_lock_waits'引用了无效的表或列或函数或缺乏使用它们的权限的定义者/调用者转储过程遇到错误并且将无法继续。 x$schema_table_statistics'引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限转储过程遇到错误并且将无法继续。 sys.x$schema_table_statistics_with_buffer'引用无效的表或列或函数或定义者/调用者缺乏使用它们的查看权限转储过程遇到错误并且将无法继续。视图“sys.host_summary”引用无效表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump:[警告](1356)视图“sys.host_summary_by_file_io”引用无效表或列或函数或视图权限的定义者/调用者缺乏使用它们mysqlpump:[警告](1356)视图'sys.host_summary_by_file_io_type'引用无效的表或列或函数或视图权限的定义者/调用者使用它们mysqlpump:[警告](1356)视图'sys.host_summary_by_stages'引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump:[警告](1356)视图“sys.host_summary_by_statement_latency”引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump:[警告](1356)视图“sys.host_summary_by_statement_type”引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump:[警告](1356)视图“sys.innodb_buffer_stats_by_schema” '引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限mysqlpump:[警告](1356)视图'sys.innodb_buffer_stats_by_table'引用无效的表或列缺乏使用权限的函数或定义者/调用者 mysqlpump: [警告] (1356) 查看“sys.innodb_lock_waits”引用无效的表或列或函数或定义者查看使用它们的权限的调用者 mysqlpump: [警告] (1356) 查看“sys.io_by_thread_by_latency”引用无效的表或列或函数或缺乏使用它们的权限的定义者/调用者 mysqlpump: [警告](1356)视图“sys.io_global_by_file_by_bytes”引用无效的表或列或函数或缺乏使用它们的权限的定义者/调用者 mysqlpump:[警告](1356)查看“sys.io_global_by_file_by_bytes” io_global_by_file_by_latency'引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限mysqlpump:[警告](1356)视图'sys.io_global_by_wait_by_bytes'引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump: [警告] (1356) 视图“sys.io_global_by_wait_by_latency”引用无效的表、列或函数或视图权限的定义者/调用者使用它们mysqlpump:[警告](1356)视图'sys.latest_file_io'引用无效的表或列或函数或视图的定义者/调用者缺乏使用权限mysqlpump:[警告](1356)查看'sys.memory_by_host_by_current_bytes'引用无效的表或列或函数或查看权限的定义者/调用者使用它们mysqlpump:[警告](1356)查看'sys.memory_by_thread_by_current_bytes'引用无效的表或列或函数或视图权限的定义者/调用者缺乏使用它们mysqlpump:[警告](1356)视图'sys.memory_by_user_by_current_bytes'引用无效的表( s) 或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump: [警告] (1356) 视图 'sys.memory_global_by_current_bytes' 引用无效的表或列或函数视图的定义者/调用者缺乏使用它们的权限mysqlpump:[警告](1356)视图'sys.memory_global_total'引用无效的表或列或函数或缺乏的定义者/调用者查看使用它们的权限 mysqlpump: [警告] (1356) 查看“sys.processlist”引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump: [警告](1356)视图“sys.schema_index_statistics”引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump:[警告](1356)视图“sys.schema_table_lock_waits” '引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump: [警告] (1356)视图'sys.schema_table_statistics'引用无效的表或列视图的(或函数)或定义者/调用者缺乏使用它们的权限 mysqlpump:[警告](1356)视图'sys.schema_table_statistics_with_buffer'引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限mysqlpump:[警告](1356)视图'sys.schema_tables_with_full_table_scans'引用无效的表或列或函数或视图权限的定义者/调用者缺乏使用mysqlpump:[警告](1356)查看“sys.session”引用无效的表或列或函数或定义者/调用者缺乏使用它们的查看权限 mysqlpump:[警告](1356)视图'sys.statement_analysis'引用无效的表或列或函数或查看权限的定义者/调用者使用它们mysqlpump:[警告](1356)视图'sys.statements_with_errors_or_warnings'引用无效的表(或列或函数或视图的定义者/调用者缺乏使用它们的权限mysqlpump:[警告](1356)视图'sys .statements_with_full_table_scans'引用无效的表或列或函数视图的定义者/调用者缺乏使用它们的权限mysqlpump:[警告](1356)视图'sys.statements_with_runtimes_in_95th_percentile'引用无效的表或列或函数或缺少定义者/调用者使用它们的视图权限 mysqlpump: [警告] (1356) 视图“sys.statements_with_sorting”引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump: [警告](1356)视图“sys.statements_with_temp_tables”引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump:[警告](1356)视图“sys.statements_with_temp_tables” user_summary' 引用无效的表或列或函数,或者缺少使用它们的查看权限的定义者/调用者 mysqlpump: [警告] ( 1356) 查看 'sys.user_summary_by_file_io' 引用无效的表或列或函数或查看权限的定义者/调用者使用它们mysqlpump:[警告](1356)查看'sys.user_summary_by_file_io_type'引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump: [警告] (1356) 视图“sys.user_summary_by_stages”引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限使用它们 mysqlpump:[警告](1356)视图“sys.user_summary_by_statement_latency”引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump:[警告](1356) )视图“sys.user_summary_by_statement_type”引用无效的表或列或函数或视图权限的定义者/调用者缺乏使用它们mysqlpump:[警告](1356)视图“sys.wait_classes_global_by_avg_latency”引用无效表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump: [警告] (1356) 视图“sys.wait_classes_global_by_latency”引用无效的表或列或视图权限的函数或定义者/调用者缺乏使用它们mysqlpump:[警告](1356)视图'sys.waits_by_host_by_latency'引用无效的表或列或函数或定义者/调用者的视图权限缺乏使用它们 mysqlpump: [警告] (1356) 视图“sys.waits_by_user_by_latency”引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump: [警告](1356)视图“sys.waits_global_by_latency”引用无效的表或列或函数或缺乏使用它们的视图权限的定义者/调用者 mysqlpump:[警告](1356)视图“sys” .x$ps_schema_table_statistics_io'引用无效的表或列或函数或视图的定义者/调用者缺乏使用它们的权限mysqlpump:[警告](1356)视图'sys.x$schema_table_lock_waits'引用无效表或列或函数或视图的定义者/调用者缺乏使用它们的权限 mysqlpump: [警告] (1356) 视图“sys.x$schema_table_statistics”引用无效的表或列(视图的或函数或定义者/调用者缺乏使用它们的权限mysqlpump:[警告](1356)视图'sys.x$schema_table_statistics_with_buffer'引用无效的表或列或函数或者视图的定义者/调用者缺乏使用它们的权利
我不知道我做错了什么,但似乎是 MySQL 表兼容性问题。我并不坏。
解决办法很简单,升级系统表即可。
我用这个博客作为参考。
虽然只是一篇博客,但我觉得它给了我勇气。
[已修复] mysqlpump:[警告] (1356) – Biesma.net
正如我所说,它只是说“mysql_upgrade”,但实际上,除非您是 root 用户,否则它可能无法工作。
所以,我尝试按如下方式执行它。
mysql_upgrade -uroot -p
类似于修复表时的输出(我忘记捕获它)后,它正常结束。
为了确保万无一失,请在执行之前使用 mysqldump 备份所有数据。
我想我现在已经达到我的目标了...
我不知道我在做什么,但之后我能够毫无问题地运行 mysqlpump。
概括
这次我们介绍了 mysqlpump,它是 mysqldump 命令的后继工具。
我认为仅进度显示和压缩选项就足以使其易于使用。
除此之外,它是并行处理。
我想转储一个更大的数据库,但找不到目标。
最后我想介绍一下客户遇到的一个问题。
我认为我能够干净地解决问题,但是由于我正在恢复表,因此不要忘记进行备份以防万一。
MySQL 5.7.8及以上版本已包含该功能,请尝试一下。
最后
我开设了我所属的系统开发服务网站“SEKARAKU Lab”。
Beyond是从服务器设计搭建到运营的一站式服务,所以如果您在服务器端开发方面遇到任何问题,请随时联系我们。
SEKARAKU 实验室: [https://sekarakulab.beyondjapan.com/](https://sekarakulab.beyondjapan.com/)
就是这样。