如何将现有数据库导入宅基地


How to import existing database to homestead?

我正在学习使用Homestead 2.0。我在本地机器上有一个现有的MySQL数据库。如果我在homestead虚拟机上创建了一个新的laravel 5.0项目,我应该如何连接到现有的数据库?

  1. 如果我需要在Homestead上迁移数据库,应该怎么做?
  2. 如果我可以从Homestead连接到我的数据库,我该如何在Homestead上配置它?

谢谢。

我有同样的问题;这就是我如何解决的

我正在开发一个使用WampServer作为开发环境的laravel 4.2项目,后来我决定改为laravel homestead作为开发环境

步骤:

将数据库保存为.sql文件(我的情况是:从phpMyAdmin导出并保存为db.sql)

将.sql文件放在项目的根目录

导航到homestead目录

C:'Users'chebaby'Homestead (master)

进入流浪包厢

vagrant ssh

导航到您的项目根框内(在我的情况下,您早先保存数据库.sql文件:db.sql)

vagrant@homestead:~$ cd Code/project-folder/

登录mysql

vagrant@homestead:~/Code/project-folder$ mysql --user=homestead --password=secret

检查数据库是否已经存在,运行

mysql> show databases;

创建数据库

mysql> create database yourdatabasename;

现在你确定你的数据库已经创建,退出mysql回到流浪汉提示符

mysql> exit;

通过运行

导入数据库文件
vagrant@homestead:~/Code/project-folder$ mysql --user=homestead --password=secret yourdatabasename < db.sql

您所要做的就是检查您现有的数据库是否已成功导入

登录mysql

vagrant@homestead:~/Code/project-folder$ mysql --user=homestead --password=secret

然后运行

mysql> use yourdatabasename

运行

显示表
mysql> show tables;

希望这能回答你的问题

额外的资源

Laravel Homestead- MySQL默认凭证和数据库

如何在MySQL中使用命令行导入SQL文件?

将您的Homestead安装视为在完全不同的机器上运行的远程主机。Homestead不知道你的本地主机的任何信息,因此不能直接连接到本地托管的MySQL数据库。

您的Homestead安装在自己的IP地址上运行。无论IP是什么(可能是192.168.10.10),您都可以使用以下凭据使用MySQL Workbench或SequelPro连接到它:

Host: Your Homestead IP
端口:3306
用户名:家园
密码:秘密

你可以通过打开下面的文件找到你的IP地址:

~/.homestead/Homestead.yaml

如果你在Windows上,那么它可能是:

C: ' '用户名' .homestead '用户Homestead.yaml

为了与数据库交互,确保Homestead首先运行,在Homestead目录下运行vagrant up,否则会出错。

之后,您可以导出本地数据库,并使用上面描述的凭据将其导入到您的Homestead数据库之一。

注意,Homestead是一个单独的环境,不能访问主机上的DB。Laravel Homestead安装了mysql数据库。您应该使用这个mysql代码在Homestead中运行。解决问题的一个简单方法是在Homestead上安装phpMyAdmin,然后在Homestead中导入DB到mysql。

安装phpMyAdmin的步骤从这里得到了下面的答案,并添加了我的注释

  1. 从https://www.phpmyadmin.net下载最新版本的phpMyAdmin并将其解压缩到主机的目录中。
    注:我提取到/var/www/phpmyadmin/public。这里public目录是重要的,否则你会收到No input file specified.错误,当你访问phpmyadmin
  2. 配置homestead.yaml文件添加一个可以访问phpmyadmin的站点

    folders:
    ,,,,- map: /var/www/phpmyadmin
    ,,,,,,,,to: /home/vagrant/code/phpmyadmin

    sites:
    ,,,,- map: phpmyadmin.app
    ,,,,,,,,to: /home/vagrant/code/phpmyadmin/public

  3. 将这行添加到您的'etc'hosts文件:
    192.168.10.10 phpmyadmin.app
    注意:192.168.10.10是我的homestead.yaml配置文件中的ip。

现在通过运行vagrant up启动vagrant,您应该能够通过转到url phpmyadmin.app访问homestead的mysql。现在已经安装了phpmyadmin,您可以轻松地导入数据库。