gpt4 book ai didi

MySQL-SELECT * INTO OUTFILE LOCAL?

转载 作者:IT老高 更新时间:2023-10-28 12:58:44 26 4
gpt4 key购买 nike

MySQL 太棒了!我目前正在参与一个主要的服务器迁移,以前,我们的小型数据库曾经与客户端托管在同一台服务器上。
所以我们曾经这样做过:SELECT * INTO OUTFILE .... LOAD DATA INFILE ....

现在,我们将数据库移至另一台服务器,SELECT * INTO OUTFILE .... 不再有效,这是可以理解的——我相信是出于安全原因。但是,有趣的是 LOAD DATA INFILE .... 可以更改为 LOAD DATA LOCAL INFILE .... 并且 bam,它可以工作。

我没有提示,也没有表达对 MySQL 的厌恶。替代方案添加了 2 行额外代码和一个系统调用,形成一个 .sql 脚本。我只想知道为什么 LOAD DATA LOCAL INFILE 有效,为什么没有 SELECT INTO OUTFILE LOCAL 这样的东西?

我做了功课,找不到上述问题的直接答案。我也找不到@ MySQL 的功能请求。如果有人能澄清这一点,那就太棒了!

MariaDB 有能力处理这个问题吗?

最佳答案

来自手册:SELECT ... INTO OUTFILE 语句的主要目的是让您非常快速地将表转储到服务器机器上的文本文件中。如果要在服务器主机以外的某个客户端主机上创建结果文件,则不能使用 SELECT ... INTO OUTFILE。在这种情况下,您应该改用诸如 mysql -e "SELECT ..."> file_name 之类的命令在客户端主机上生成文件。"

http://dev.mysql.com/doc/refman/5.0/en/select.html

一个例子:

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

关于MySQL-SELECT * INTO OUTFILE LOCAL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2867607/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com