php - 仅将一个表从一个数据库导入/导出到另一个数据库 [通过 PHP]

标签 php mysql sql database phpmyadmin

我只想从数据库中导出一个表,然后通过 PHP 将其导入到另一个数据库,我尝试在 phpMyAdmin 中执行此操作,我从 .sql 中的 sql-1 导出(并压缩),然后导入到 sql-2,但导出完成后,它只显示一个空白页。所以我想通过 PHP 来做到这一点。我有整个数据库的导出/导入代码,但我只想导入/导出一个特定的表。

这是我的代码:

导入:

<?php
//ENTER THE RELEVANT INFO BELOW
$mysqlDatabaseName ='db123456789';
$mysqlUserName ='dbo123456789';
$mysqlPassword ='yourPassword';
$mysqlHostName ='db1234.perfora.net';
$mysqlImportFilename ='yourMysqlBackupFile.sql';

//DO NOT EDIT BELOW THIS LINE
//Export the database and output the status to the page
$command='mysql -h' .$mysqlHostName .' -u' .$mysqlUserName .' -p' .$mysqlPassword .' ' .$mysqlDatabaseName .' < ' .$mysqlImportFilename;
exec($command,$output=array(),$worked);
switch($worked){
case 0:
echo 'Import file <b>' .$mysqlImportFilename .'</b> successfully imported to database <b>' .$mysqlDatabaseName .'</b>';
break;
case 1:
echo 'There was an error during import. Please make sure the import file is saved in the same folder as this script and check your values:<br/><br/><table><tr><td>MySQL Database Name:</td><td><b>' .$mysqlDatabaseName .'</b></td></tr><tr><td>MySQL User Name:</td><td><b>' .$mysqlUserName .'</b></td></tr><tr><td>MySQL Password:</td><td><b>NOTSHOWN</b></td></tr><tr><td>MySQL Host Name:</td><td><b>' .$mysqlHostName .'</b></td></tr><tr><td>MySQL Import Filename:</td><td><b>' .$mysqlImportFilename .'</b></td></tr></table>';
break;
}
?>

导出:

<?php
//ENTER THE RELEVANT INFO BELOW
$mysqlDatabaseName ='db123456789';
$mysqlUserName ='dbo123456789';
$mysqlPassword ='myPassword';
$mysqlHostName ='db1234.perfora.net';
$mysqlExportPath ='chooseFilenameForBackup.sql';

//DO NOT EDIT BELOW THIS LINE
//Export the database and output the status to the page
$command='mysqldump --opt -h' .$mysqlHostName .' -u' .$mysqlUserName .' -p' .$mysqlPassword .' ' .$mysqlDatabaseName .' > ~/' .$mysqlExportPath;
exec($command,$output=array(),$worked);
switch($worked){
case 0:
echo 'Database <b>' .$mysqlDatabaseName .'</b> successfully exported to <b>~/' .$mysqlExportPath .'</b>';
break;
case 1:
echo 'There was a warning during the export of <b>' .$mysqlDatabaseName .'</b> to <b>~/' .$mysqlExportPath .'</b>';
break;
case 2:
echo 'There was an error during export. Please check your values:<br/><br/><table><tr><td>MySQL Database Name:</td><td><b>' .$mysqlDatabaseName .'</b></td></tr><tr><td>MySQL User Name:</td><td><b>' .$mysqlUserName .'</b></td></tr><tr><td>MySQL Password:</td><td><b>NOTSHOWN</b></td></tr><tr><td>MySQL Host Name:</td><td><b>' .$mysqlHostName .'</b></td></tr></table>';
break;
}
?>

最佳答案

为什么不直接使用 MySQL?

创建表 your_NEW_db_name.your_new_table_name 像 your_db_name.your_old_table_name;

插入 your_NEW_db_name.your_new_table_name SELECT * FROM your_db_name.your_old_table_name;

关于php - 仅将一个表从一个数据库导入/导出到另一个数据库 [通过 PHP],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23579079/

相关文章:

c# - 更新 SQL 命令 C#

java - 在 Spring JPA 中避免 SQL 注入(inject)

php - 实现多个客户 list

php - sql查询不拉取记录

连接两个表时的Mysql Distinct max列

mysql - 在mysql中选择数据,其中分隔符是两个数据字母数字数据字段

sql - 如何在 Snowflake SQL/DBT 宏中映射对象/json 数组?

php - 如何在数组中搜索字符串的一部分?

php - woocommerce 构建类别树

php - 获取数组的最后一个元素,而不更改其内部指针