我正在尝试通过以下命令从MariaDB中获取增量转储:
mysqldump --opt -h<HOST_NAME> -u<USER_ID> -p<PASSWORD> --no-create-info --where=date >= '2019-04-01' <DATABASE_NAME> > backup.sql
我遇到以下错误:
mysqldump: Got error: 1044: Access denied for user 'user'@'%' to
database '2019-04-01' when selecting the database
有人可以帮我弄清楚我在这里犯什么错误吗?
答案 0 :(得分:1)
您给出的命令中的--where
条件由几个用空格分隔的单词组成。但是--where
选项的参数必须是一个参数,至少在Shell解释的范围内。
因此,参数''2019-04-01'被解释为数据库名称,而不是部分条件。
尝试一下:
mysqldump ... --where="date >= '2019-04-01'" <DATABASE_NAME> > backup.sql
双引号将分隔整个表达式,并使外壳将其解释为单个参数。