首页  >  文章  >  数据库  >  为什么 MySQL 中缺少“SELECT * INTO OUTFILE LOCAL”,如何才能达到相同的结果?

为什么 MySQL 中缺少“SELECT * INTO OUTFILE LOCAL”,如何才能达到相同的结果?

Patricia Arquette
Patricia Arquette原创
2024-10-26 08:00:03642浏览

Why is

MySQL - SELECT * INTO OUTFILE LOCAL?

在最近的服务器迁移中,数据库被移动到不同的服务器,导致之前的命令“SELECT * INTO OUTFILE ...”失败。虽然“LOAD DATA INFILE ...”仍然有效,但缺少相应的“SELECT INTO OUTFILE LOCAL”选项让用户感到困惑。

缺少“SELECT INTO OUTFILE LOCAL”的解释

与从服务器上的本地文件读取的“LOAD DATA INFILE”不同,“SELECT INTO OUTFILE”旨在在服务器本身上生成一个文本文件。出于安全考虑,在外部客户端上创建文件的能力受到限制,因此“SELECT INTO OUTFILE LOCAL”无法运行。

替代解决方案

手册建议结合使用 mysql 和重定向在客户端主机上生成文件,如下例所示:

mysql -h my.db.com -u usrname--password=pass db_name -e 'SELECT foo FROM bar' > /tmp/myfile.txt

MariaDB 的功能

虽然文章没有明确提及 MariaDB,该问题与 MySQL 的行为有关,不会直接影响 MariaDB 的功能。

以上是为什么 MySQL 中缺少“SELECT * INTO OUTFILE LOCAL”,如何才能达到相同的结果?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn