【问题标题】:MySQL table exporting and importing using a file - without phpMyAdmin?使用文件导出和导入 MySQL 表 - 没有 phpMyAdmin?
【发布时间】:2011-06-30 07:22:00
【问题描述】:

如果我可以通过我的站点为我的 MySQL 表请求一个备份文件(例如 .sql 或 .csv),那就太好了,这样我就可以“重置”表,以防出现任何问题。这两个操作,导出和导入,在here 进行了解释,但在我的情况下,如果这可以通过某种 Web 界面完成,而不直接访问 phpMyAdmin,那就更好了。这可能吗?如果是这样,我应该看看哪些 PHP 函数?

【问题讨论】:

    标签: php mysql import export backup


    【解决方案1】:

    查看this MySQL doc page 并查找INTO OUTFILE 选项,该选项允许您将结果直接写入文件,甚至无需从PHP 中读取。

    【讨论】:

    • 这看起来很有希望,虽然我不知道如何指定路径。以 SELECT a,b,a+b INTO OUTFILE '/tmp/result.txt' 为例,但它在哪里创建文件?它是从我的服务器的根目录开始还是相对的?
    • 这是一个绝对文件系统路径。
    • 我找不到备份文件,我想生成一个链接以便下载。但目前,我不确定它是否已成功创建文件(我正在使用'/path-to-public_html/backupfile.txt')。我该怎么做,我怎么知道我的所有权限是否设置正确?
    【解决方案2】:

    使用 mysqldump

    mysqldump -u username -ppassword -h hostname database_name > db_name_backup.sql
    

    Mysqldump documentation is here

    【讨论】:

    • 我必须使用 System();为此功能?听起来像是我无法访问的东西,但我不完全确定。
    • 你想如何运行它? php?.您可以只编写一个 shell 脚本并像其他任何脚本一样运行它。
    • 是的,我正在尝试通过 PHP 运行它。
    • 那么你需要在系统中运行它。作为备份方法 mysqldump 更好,因为这种方法还保留了模式。
    猜你喜欢
    • 2014-07-12
    • 2016-08-27
    • 2014-12-13
    • 2021-03-21
    • 2016-10-15
    • 2015-07-20
    • 2013-05-03
    • 2011-10-25
    • 2020-02-20
    相关资源
    最近更新 更多