2

我的问题非常具体,我一直无法在网上找到答案。我一直在本地构建一个 CakePHP Web 应用程序,并使用 XAMPP 使用 phpMyAdmin 在 Apache 服务器上本地托管它。现在我正在尝试将站点迁移到 Windows Azure,并且数据库导入被证明是有问题的。

我在 Azure 中创建了一个新网站,并将我的网站根文件夹放在指定的目录中。我发布了该站点,并且能够查看该站点并出现预期的“缺少数据库”错误。

然后我将 phpMyAdmin 中的所有表导出到 .sql 文件(有些托管在另一台服务器上,所以我无法导出整个数据库),现在我遇到了问题。我用谷歌搜索了如何广泛导入 .sql 文件,但只能找到如何从 SQL Server 导入。我在微软网站上看到一篇文章:

http://blogs.iis.net/ruslany/archive/2012/12/17/phpmyadmin-on-windows-azure-web-sites.aspx

我按照步骤操作,但在最后阶段无法登录。但是,这种方法似乎有点矫枉过正,肯定有一种简单的方法可以将标准 MySQL 数据库等基本内容导入 Azure 吗?

4

2 回答 2

0

你可以通过命令行来完成。阅读: http: //www.windowsazure.com/en-us/develop/php/tutorials/website-w-mysql-and-git/

请注意标题为“获取远程 MySQL 连接信息”的部分。在 Azure 上创建 mysql 数据库后,从 mysql 连接到它:

mysql -h{Data Source] -u[User Id] -p[Password] -D[Database]

从这里,您可以从您创建的 sql 文件中复制 create table 语句和 insert 语句。或者,如果您可以导航到 .sql 文件,您可以执行以下操作:

mysql>\. data.sql

这将执行 sql 文件中的所有命令。

于 2013-02-12T00:56:29.230 回答
0

有一种更简单的方法;在进入详细信息之前进行总结:您可以从本地 phpmyadmin 访问远程 azure MySQL 数据库并使用导入、导出 - 您习惯在 phpmyadmin 上使用的所有功能。

我正在谈论的方法的基础可以在这里找到: http ://ruslany.net/2012/12/phpmyadmin-on-windows-azure-web-sites/ 这种方法允许您在您的天蓝色网站上安装 phpmyadmin这样您就可以通过 www.yoursitename.net/phpmyadmin 之类的方式访问它

但是,比这更好的方法是直接从现有的本地 phpmyadmin 访问远程 (Azure) mysql 数据库 - 看到您正在使用 xampp。为此,请在您的 xampp/phpmyadmin 文件夹中查找 config.inc.php 并在文件末尾添加以下行:

$i++;
$cfg['Servers'][$i]['host'] = "[look for data source in mysqldbconnectionstring - see in your azure dashboard publish settings]";
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = 'false';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['AllowNoPassord'] = false;
  • 所以只更改主机值 - 参见上面 [] 中的说明。保存文件。

当您从 localhost 打开 phpmyadmin 时,您会看到“服务器选择”现在是一个下拉菜单 - 您知道该怎么做!

于 2013-06-11T08:49:14.723 回答