Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用mysqldump排除表的语法_Php_Mysql - Fatal编程技术网

Php 使用mysqldump排除表的语法

Php 使用mysqldump排除表的语法,php,mysql,Php,Mysql,快发疯了。我找不到这一行,使用MySQL引用中的示例,我在这里显然是错的 这是错误的语法,但我不确定将选项放在何处--ignore table=search\u index,并且尝试了许多变体,除了正确的一个 $cmd = "mysqldump -u --ignore-table=search_index " . $prod_db_user . " -p" . $prod_db_pass . " " . $prod_db_1 . " > " . $qa_backup_name; 我只是尝

快发疯了。我找不到这一行,使用MySQL引用中的示例,我在这里显然是错的

这是错误的语法,但我不确定将选项放在何处--ignore table=search\u index,并且尝试了许多变体,除了正确的一个

$cmd = "mysqldump -u --ignore-table=search_index " . $prod_db_user . " -p" . $prod_db_pass . " " . $prod_db_1 . " > " . $qa_backup_name;
我只是尝试转储数据库并排除名为search\u index的表


谢谢

$prod\u db\u user
用户名放在
-u
之后,因为这是用户名标志

$cmd = "mysqldump -u{$prod_db_user} --ignore-table=search_index  -p{$prod_db_pass} $prod_db_1  > $qa_backup_name";
由于这是一个双引号字符串,所有PHP变量都可以直接进入该字符串。但是,一定要用第一个!逃离它们

最后,根据执行环境的不同,可能需要指定
mysqldump
的完整路径(如果在
$path
(或
%path%
)环境变量中未找到该路径)

$cmd = "/path/to/mysqldump -u{$prod_db_user} ....";

$prod\u db\u user
用户名放在
-u
之后,因为这是用户名标志

$cmd = "mysqldump -u{$prod_db_user} --ignore-table=search_index  -p{$prod_db_pass} $prod_db_1  > $qa_backup_name";
由于这是一个双引号字符串,所有PHP变量都可以直接进入该字符串。但是,请确保使用first!对其进行转义

最后,根据执行环境的不同,可能需要指定
mysqldump
的完整路径(如果在
$path
(或
%path%
)环境变量中未找到该路径)

$cmd = "/path/to/mysqldump -u{$prod_db_user} ....";

好的,它工作过一次,但第二次我得到“非法使用option--ignore table=。”…只有当我集成--ignore table=search_索引时,它才会失败,否则原始的和您的想法都会起作用。但是,我没有像上面在脚本中那样在任何一个实例中转义,实际变量的定义如下:$prod_db_user=“admin”;@kellyjohnson如果您将数据库指定为
$prod_db_1
,那么排除
database.table
是没有意义的。好吧,这是Drupal安装,而drush尚未安装在该服务器上。因此,正常的mysqldump复制所有缓存表和搜索索引,从而生成608meg sql文件!排除搜索至少可以降低20%,在这种情况下可能更高。这就是为什么我要排除这个表。好吧,它工作过一次,但第二次我得到“非法使用选项--忽略表=”…只有当我集成--ignore table=search\u索引时,它才会失败,否则原始的和您的想法都会起作用。但是,我没有在脚本中的上述任何一个实例中进行转义,实际变量的定义如下:$prod\u db\u user=“admin”;@kellyjohnson如果您将数据库指定为
$prod_db_1
,那么排除
database.table
是没有意义的。好吧,这是Drupal安装,而drush尚未安装在该服务器上。因此,正常的mysqldump复制所有缓存表和搜索索引,从而生成608meg sql文件!排除搜索至少可以降低20%,在这种情况下可能会更高。这就是为什么我试图排除这个表。