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

时间:2015-10-26 00:22:30

标签: php mysql laravel-5 homestead

我正在学习使用Homestead 2.0。我的本地计算机上有一个现有的MySQL数据库。如果我在homestead虚拟机上创建一个新的laravel 5.0项目,我该怎么做才能连接到现有数据库?

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

3 个答案:

答案 0 :(得分:15)

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

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

步骤:

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

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

导航到您的宅基地目录

C:\Users\chebaby\Homestead (master)

进入流浪盒

vagrant ssh

导航到框中的项目根目录(在我的情况下你早期保存了darabase .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退回到vagrant提示符

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 default credentials and database

How to import an SQL file using the command line in MySQL?

答案 1 :(得分:1)

将您的Homestead安装视为在完全不同的计算机上运行的远程主机。 Homestead对您的localhost一无所知,因此无法直接连接到您本地托管的MySQL数据库。

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

主持人:您的Homestead IP
港口:3306
用户名:宅基地 密码:秘密

您可以通过打开以下文件找到您的IP:

〜/ .homestead / Homestead.yaml

如果您使用的是Windows,则可能是:

C:\ Users \您的用户名\ .homestead \ Homestead.yaml

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

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

答案 2 :(得分:1)

请注意,Homestead是一个单独的环境,无法访问主机上的数据库。 Laravel Homestead装有一个mysql数据库。您应该将此mysql用于在Homestead中运行的代码。解决问题的一种简单方法是在Homestead盒上安装phpMyAdmin,然后将数据库导入Homestead中的mysql。

安装phpMyAdmin的步骤: 从here得到了以下答案,并添加了我的笔记

  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启动流浪汉,您应该可以通过访问URL phpmyadmin.app来访问homestead的mysql。现在已经安装了phpmyadmin,您可以轻松导入数据库。