首页 > 解决方案 > mysqldump 命令在 linux 和 macos 之间的工作方式不同

问题描述

我正在尝试从我的 Mac 上做一个 mysqldump。我正在使用 MySQL 5.7 访问 AWS RDB。SQL如下:

/usr/local/bin/mysqldump -u confluenceuser -pPASSWD -h mydatabase.rds.amazonaws.com --port=3306 --verbose --max_allowed_packet=2147483648 --routines --triggers confluence_qa_710 > confluence_qa_710-20210520.sql

我收到以下错误:

-- Connecting to mydatabase.rds.amazonaws.com...
-- Retrieving table structure for table AO_05769A_VISIT_ENTITY...
-- Sending SELECT query...
-- Retrieving rows...
mysqldump: Couldn't execute 'SELECT COLUMN_NAME,                       JSON_EXTRACT(HISTOGRAM, '$."number-of-buckets-specified"')                FROM information_schema.COLUMN_STATISTICS                WHERE SCHEMA_NAME = 'confluence_qa_710' AND TABLE_NAME = 'AO_05769A_VISIT_ENTITY';': Unknown table 'COLUMN_STATISTICS' in information_schema (1109)

相同的 SQL 语句在我的 linux 机器上运行良好(更改为 /usr/bin/mysqldump)。两台机器上的 SQL 版本存在一些差异。我在 Mac 上使用 Homebrew 安装

% mysqldump --version
mysqldump  Ver 8.0.25 for macos10.15 on x86_64 (Homebrew)

它已经安装在 Linux (RHEL7) 系统上(通过 yum?)

$ mysqldump --version
mysqldump  Ver 10.14 Distrib 5.5.68-MariaDB, for Linux (x86_64)

如何让 mysqldump 在我的 Mac 上工作?

标签: macosamazon-rdsmysql-5.7rhel7

解决方案


推荐阅读