如果您尝试导入 mySQL,则导出原始 MS-SQL 转储可能无法正常工作,因为语法存在一些差异。有一些商业程序可以帮助您迁移数据,否则最好编写一个 PHP 程序以从 MSSQL 导出到 mySQL。
但您的问题听起来更像是在询问如何远程访问数据库。
.
PHP 可以原生地做到这一点。当您创建指向数据库的链接时,您指定主机。例如:$databaseConnection = new mysqli('username','password','host_ip_address');
如果您来自 MSSQL,您可能会遇到一些陷阱。
要允许 MS-SQL 上的远程连接,您可以使用“表面区域”配置工具。您可能会发现您的 mySQL 数据库服务器已配置为允许远程连接,否则您将不得不与您的主机一起使用(听起来您没有自己的盒子)。
下一个技巧是记住 mySQL 中的用户名看起来像这样:'user'@'host'。
cPanel 主机通常会安装 PHPmyAdmin。打开它,查看mysql数据库中的用户表(实际运行在MySQL服务器上的名为mysql的数据库)。
您会看到一个主机列。因此,如果您的“root”用户仅设置为“localhost”,您将无法从另一台计算机以该用户身份登录。通配符是 %。你可以在这里阅读 - http://dev.mysql.com/doc/refman/5.5/en/adding-users.html
当然,当涉及到用户时,同样的规则也适用于 mySQL。不要使用您的 root 帐户访问子数据库,而是分配仅具有所需权限的新用户。还可以考虑使用不可预测的用户名。这并不能真正回答您的问题(抱歉),但在您查看用户表时值得一提。
所以最后回答你的问题:
1) 登录 cPanel 并创建您的数据库 'foo'
2) 运行 SQL 命令:
GRANT ALL PRIVILEGES ON foo.* TO 'secretuser'@'%' IDENTIFIED BY 'longpassword'
那么 PHP 代码将如下所示:
$host = 'ipaddress or hostname';
$mysqli = new mysqli('secretuser','longpassword',$host,'foo');
// look in php.net for error handling
$query = "SELECT * FROM tablename LIMIT 0,10";
$result = $mysqli->query($query);
我设置限制的原因是因为您可能习惯于“SELECT TOP 10”