Php Laravel 5.1无法迁移数据库
Im为web服务器使用MAMP: 下面是我的代码 config/database.phpPhp Laravel 5.1无法迁移数据库,php,mysql,mamp,laravel-5.1,Php,Mysql,Mamp,Laravel 5.1,Im为web服务器使用MAMP: 下面是我的代码 config/database.php 'mysql' => [ 'driver' => 'mysql', 'unix_socket' => '/Application/MAMP/tmp/mysql/mysql.sock', 'host' => env('DB_HOST'), 'database' =>
'mysql' => [
'driver' => 'mysql',
'unix_socket' => '/Application/MAMP/tmp/mysql/mysql.sock',
'host' => env('DB_HOST'),
'database' => env('DB_DATABASE'),
'username' => env('DB_USERNAME'),
'password' => env('DB_PASSWORD'),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
],
.env
APP_ENV=local
APP_DEBUG=true
APP_KEY=dfsfsdffsd
DB_HOST=localhost
DB_DATABASE=my_database
DB_USERNAME=my_db_username
DB_PASSWORD=my_db_password
CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync
MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
我在运行php artisan migrate时遇到此错误:
[PDOException]
SQLSTATE[HY000] [2002] No such file or directory
可能有什么问题?提前感谢首先尝试将您的命令更改为此
php artisan migrate --env=local
如果不起作用,请确保MySQL已启动并正在运行,并确保它使用默认端口
3306
此外,尝试从命令行连接到MySQL,以确保可以连接到MySQL。打开一个命令行,尝试这样连接
mysql -hlocalhost -uroot -p
看看你是否能连接。如果不起作用,您可能需要将localhost
更改为127.0.0.1
或使用此行更新主机文件
127.0.0.1 localhost
127.0.0.1 127.0.0.1
我还会将这一行添加到.env文件中
DB_CONNECTION=mysql
如果以上所有操作都失败,我会说您的套接字值设置不正确
尝试从更改套接字值
/Application/MAMP/tmp/mysql/mysql.sock
到
您可以考虑为PHP/P>创建PHPini文件 打开php.ini文件并查找
pdo\u mysql。默认的\u socket
,设置如下:
pdo_mysql.default_socket=/Applications/MAMP/tmp/mysql/mysql.sock
你迁移了吗
php artisan make:migration
I在fresh laravel安装中运行php artisan migrate
以迁移用户表尝试运行此命令composer dump autoload
仍然收到相同的错误:(确保MySQL已启动并正在运行,并确保它使用默认端口3306?尝试从命令行连接到MySQL,以确保您可以连接到MySQL。打开命令行,尝试这样连接MySQL-hlocalhost-uroot-p
,看看您是否能够连接。如果不起作用,您可能需要更改localh。)ost到127.0.0.1,或使用此行“127.0.0.1 localhost”和127.0.0.1 127.0.0.1
pdo_mysql.default_socket=/Applications/MAMP/tmp/mysql/mysql.sock