我想将我的数据库转储到一个文件中.
某些网站主机不允许远程或命令行访问,因此我必须使用一系列查询来执行此操作.
所有相关问题都说"use mysqldump
"这是一个很棒的工具,但是我没有命令行访问这个数据库.
我希望CREATE
和INSERT
命令同时创建 - 基本上,相同的性能mysqldump
.是SELECT INTO OUTFILE
正确的旅行之路,还是有其他我忽视的东西 - 或许这是不可能的?
cer*_*erd 23
使用mysqldump-php
纯PHP解决方案复制mysqldump
可执行文件的功能,以便从基本到复杂的用例 - 我知道您可能没有远程CLI和/或mysql直接访问,但只要您可以通过httpd上的HTTP请求执行在主机上这将工作:
因此,您应该能够直接从/ www /中的安全目录运行以下纯PHP脚本,并在其中写入输出文件并使用wget获取它.
mysqldump-php - GitHub上的纯PHP mysqldump
PHP示例:
<?php
require('database_connection.php');
require('mysql-dump.php')
$dumpSettings = array(
'include-tables' => array('table1', 'table2'),
'exclude-tables' => array('table3', 'table4'),
'compress' => CompressMethod::GZIP, /* CompressMethod::[GZIP, BZIP2, NONE] */
'no-data' => false,
'add-drop-table' => false,
'single-transaction' => true,
'lock-tables' => false,
'add-locks' => true,
'extended-insert' => true
);
$dump = new MySQLDump('database','database_user','database_pass','localhost', $dumpSettings);
$dump->start('forum_dump.sql.gz');
?>
Run Code Online (Sandbox Code Playgroud)