ITPub博客

首页 > 数据库 > MySQL > MySQL SELECT..INTO OUTFILE语句只能导出1000行的故障

MySQL SELECT..INTO OUTFILE语句只能导出1000行的故障

原创 MySQL 作者:feelpurple 时间:2016-10-20 17:24:43 0 删除 编辑
同事反映,客户的一套MySQL生产库,执行SELECT.. INTO OUTFILE语句只能导出1000行

最初以为是系统参数被重新设置了,建议他更改系统参数

mysql> set global sql_select_limit=50000000;
Query OK, 0 rows affected (0.00 sec)

同事反映,没有生效

登陆到数据库,查看系统参数,发现全局的参数已经生效

mysql> show global variables like 'sql_select_limit';
+------------------+----------+
| Variable_name    | Value    |
+------------------+----------+
| sql_select_limit | 50000000 |
+------------------+----------+
1 row in set (0.00 sec)

查看会话级参数,发现依然是1000

mysql> show session variables like 'sql_select_limit';
+------------------+-------+
| Variable_name    | Value |
+------------------+-------+
| sql_select_limit | 1000  |
+------------------+-------+
1 row in set (0.00 sec)

查看官方文档,发现当启动数据库时指定了--safe-updates参数,当会话连接到数据库后,会将sql_select_limit参数设为1000

When you use the --safe-updates option, mysql issues the following statement when it connects to
the MySQL server:
SET sql_safe_updates=1, sql_select_limit=1000, max_join_size=1000000;

重新启动数据库,去掉--safe-updates参数,数据库恢复正常
mysqld_safe --defaults-file=/etc/my.cnf &

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/26506993/viewspace-2126826/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2014-08-01

  • 博文量
    404
  • 访问量
    1673963