我从名为migrations
的Laravel 5.4数据库中删除了laravel
表。当我运行php artisan migrate:install
时,我收到此错误:
[Illuminate\Database\QueryException]
SQLSTATE[HY000] [2002] No such file or directory (SQL: select * from
information_schema.tables where table_schema = laravel
and table_name = migrations)
我删除并重新创建了数据库。我也跑了composer update
。没运气。我可以在phpMyAdmin中运行该命令并手动创建表。
答案 0 :(得分:12)
如果您使用import collections
import librosa
import wave
my_buffer = collections.deque(maxlen=10)
f = wave.open('Desktop/0963.wav',"rb")
num_frames = f.getnframes()
for frame in range(num_frames):
my_buffer.append(f.readframes(frame))
作为数据库主机,请将其更改为localhost
,然后运行127.0.0.1
,然后再次尝试php artisan config:clear
。
答案 1 :(得分:1)
也许尝试以下命令
回滚:
php artisan migrate:rollback
或使用以下方式重置:
php artisan migrate:reset
或刷新:
php artisan migrate:refresh
答案 2 :(得分:1)
以下是我对.env
文件的建议:
DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
然后在Database.php
中添加文件夹位置:
'unix_socket' => env('DB_SOCKET', '/Applications/MAMP/tmp/mysql/mysql.sock'),
最后,尝试:
php artisan config:clear
php artisan migrate:install
答案 3 :(得分:1)
我在macOS上使用MAMP,并且在将localhost编辑为127.0.0.1和端口为8888后,通过添加以下内容来解决此问题
'unix_socket'=> env('DB_SOCKET','/Applications/MAMP/tmp/mysql/mysql.sock'),
到config / database.php文件。
答案 4 :(得分:1)
如果您使用的是MAMP Pro(MAMP的免费版本并不总是必需的),那么最好的办法就是将其添加到您的.env
文件中:
DB_SOCKET=/Applications/MAMP/tmp/mysql/mysql.sock
这假定您的MAMP安装位置当然是/Applications/MAMP
(默认设置)。
信用:@Uncoke
在此问题中的评论答案 5 :(得分:1)
我通过在.env
文件中设置环境变量来解决此问题:
DB_CONNECTION=mysql
DB_HOST=mysql
DB_PORT=3306
实际上,我只是从DB_HOST=127.0.0.1
更改为DB_HOST=mysql
。
答案 6 :(得分:0)
我删除了文件夹并重新创建了代码库,确保将我的环境指向正确的数据库服务器。这次它奏效了。我不知道究竟是什么原因导致了原始错误。
答案 7 :(得分:0)
我正在使用Mamp,因此给出了我的Unix套接字:
localhost:/Applications/MAMP/tmp/mysql/mysql.sock
通过将laravel与数据库连接,我在顶部也得到了错误。 我的解决方案是使用不带“ localhost:”的套接字 (这是本地安装)
因此,请尝试使用套接字:/Applications/MAMP/tmp/mysql/mysql.sock
答案 8 :(得分:0)
如果您将localhost
用作数据库主机,请
将其更改为127.0.0.1
,然后运行php artisan config:clear
现在再次尝试php artisan migrate:install
答案 9 :(得分:0)
在某些情况下,这可能是由于mysql服务器未运行而发生的。使用Laravel 5.7发生在我身上,然后重新启动mysql服务器解决了它。对于ubuntu,请检查mysql服务器service mysql status
的状态。您可以使用命令service mysql restart
答案 10 :(得分:0)
在Mac和MAMP上,也可以从DB_HOST
中删除.env
。
致谢:Leap Hawk的评论