当前位置: 首页 > MySQL数据库

怎么解决MySQL5.7的mysqldump routines问题

时间:2026-01-28 14:10:39

场景:
1 新建一个5.7.12的实例
2 导出全库
mysqldump --all-databases -uroot -ptest --set-gtid-purged=off --single-transaction --quick -R --events > /tmp/a.sql
3 导出前检查:
mysql> select count(*) from mysql.proc;
+----------+
| count(*) |
+----------+
|       47 |
+----------+
1 row in set (0.00 sec)

mysql> select * from  host_summary;
+-----------+------------+-------------------+-----------------------+-------------+----------+-----------------+---------------------+-------------------+--------------+----------------+------------------------+
| host      | statements | statement_latency | statement_avg_latency | table_scans | file_ios | file_io_latency | current_connections | total_connections | unique_users | current_memory | total_memory_allocated |
+-----------+------------+-------------------+-----------------------+-------------+----------+-----------------+---------------------+-------------------+--------------+----------------+------------------------+
| localhost |       1823 | 1.14 s            | 623.98 us             |         468 |     7000 | 714.18 ms       |                   1 |                 7 |            1 | 0 bytes        | 0 bytes                |
+-----------+------------+-------------------+-----------------------+-------------+----------+-----------------+---------------------+-------------------+--------------+----------------+------------------------+
1 row in set (0.04 sec)

4 全库导入:
 mysql -uroot -ptest < /tmp/a.sql
 
 5 mysql> select count(*) from mysql.proc;
+----------+
| count(*) |
+----------+
|       0 |
+----------+
1 row in set (0.00 sec)

mysql> select * from sys.host_summary;
ERROR 1356 (HY000): View 'sys.host_summary' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them

5.5 5.6中是没有这个问题的
因为他们系统自带的没有proc.

两个方式避免:
1 不导出mysql.proc表
mysqldump --all-databases -uroot -ptest --set-gtid-purged=off --single-transaction --quick -R --events --ignore-table=mysql.proc > /tmp/a.sql
2 导入完成后upgrade

所以,无论是哪种备份方式,还原好之后最好都要执行下upgrade。

另:
使用innobackup的方式没有这个问题。


上一篇:怎么搭建MHA+MySQL
下一篇:怎么解决MySQL中的innobackupex: Error问题
mysql
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器
  • 英特尔第五代 Xeon CPU 来了:详细信息和行业反应
  • 由于云计算放缓引发扩张担忧,甲骨文股价暴跌
  • Web开发状况报告详细介绍可组合架构的优点
  • 如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳
  • 美光在数据中心需求增长后给出了强有力的预测
  • 2027服务器市场价值将接近1960亿美元
  • 生成式人工智能的下一步是什么?
  • 分享在外部存储上安装Ubuntu的5种方法技巧
  • 全球数据中心发展的关键考虑因素
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器

    英特尔第五代 Xeon CPU 来了:详细信息和行业反应

    由于云计算放缓引发扩张担忧,甲骨文股价暴跌

    Web开发状况报告详细介绍可组合架构的优点

    如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳

    美光在数据中心需求增长后给出了强有力的预测

    2027服务器市场价值将接近1960亿美元

    生成式人工智能的下一步是什么?

    分享在外部存储上安装Ubuntu的5种方法技巧

    全球数据中心发展的关键考虑因素