Asked Jul 14th, 2018 1:06 p.m. 1120 0 1
  • 1120 0 1
0

Mọi người giúp em sửa lỗi này ạ

Share
  • 1120 0 1

Illuminate\Database\QueryException : SQLSTATE[HY000] [2002] Operation timed out (SQL: select * from information_schema.tables where table_schema = Nhim13 and table_name = migrations)

1 ANSWERS


Answered Jul 16th, 2018 1:16 a.m.
Accepted
0

Operation timed out thì có vẻ là lỗi khi mà application của bạn không thể kết nối đến server database.

Bạn kiểm tra lại xem chắc chắn server database đã chạy chưa, và các thông số config để Laravel kết nối đến server database (hostname, port, user, password) đã chính xác chưa 🤔

Share
Avatar NHim @con
Jul 16th, 2018 8:06 a.m.

Anh xem giúp em thông số đã được chưa ạ

config database

      'mysql' => [
        'driver' => 'mysql',
        'host' => env('DB_HOST', 'localhost'),
        'port' => env('DB_PORT', '3306'),
        'database' => env('DB_DATABASE', 'forge'),
        'username' => env('DB_USERNAME', 'forge'),
        'password' => env('DB_PASSWORD', ''),
        'unix_socket' => env('DB_SOCKET', ''),
        'charset' => 'utf8mb4',
        'collation' => 'utf8mb4_unicode_ci',
        'prefix' => '',
        'strict' => true,
        'engine' => null,
    ],

.env

  DB_CONNECTION=mysql
  DB_HOST=192.168.10.10
  DB_PORT=33060
  DB_DATABASE=Nhim13
  DB_USERNAME=root
  DB_PASSWORD=root
   unix_socket=/Applications/MAMP/tmp/mysql/mysql.sock
0
| Reply
Share
Avatar Tran Duc Thang @thangtd90
Jul 16th, 2018 9:16 a.m.

@con À, bạn connect thông qua file .sock chứ không phải qua port à 😄

Vậy thì một là bạn nên chạy lại mysql ở dạng tcp với listen port là 3306, hai là bạn cần sửa lại config để Laravel dùng Unix Socket.

Mình thấy ở phần Database bạn có đoạn này 'unix_socket' => env('DB_SOCKET', '') là ổn rồi, nhưng config trong file .env lại thiết lập sai rồi.

Đoạn này unix_socket=/Applications/MAMP/tmp/mysql/mysql.sock đúng ra phải là DB_SOCKET=/Applications/MAMP/tmp/mysql/mysql.sock chứ 😄

0
| Reply
Share
Avatar NHim @con
Jul 16th, 2018 3:40 p.m.

Mình đã sửa lại

.env

DB_CONNECTION=mysql
DB_HOST=192.168.10.10
DB_PORT=33060
DB_DATABASE=Nhim13
DB_USERNAME=root
DB_PASSWORD=root
DB_SOCKET=/Applications/MAMP/tmp/mysql/mysql.sock

thì nó lại hiện ra lỗi này

SQLSTATE[HY000] [1049] Unknown database 'nhim13' (SQL: select * from information_schema.tables where table_schema = Nhim13 and table_name = migrations)

0
| Reply
Share
Avatar Tran Duc Thang @thangtd90
Jul 17th, 2018 12:45 a.m.

@con Vậy là bạn đã kết nối được đến server mysql rồi, giờ vấn đề của bạn là app Laravel không thể tìm thấy database có tên nhim13 thôi.

Bạn hãy kiểm tra lại xem mình đã tạo database nhim13 chưa 🤔 Nếu chưa thì bạn vào trong mysql và dùng câu lệnh sau để tạo ra database này trước khi chạy migration nhé 😉

CREATE DATABASE nhim13 CHARACTER SET utf8;
0
| Reply
Share
Avatar NHim @con
Jul 17th, 2018 8:04 a.m.

Mình đã tạo và kiểm tra database nhim13 trong mysql rồi nhưng khi mình migrate thì vẫn bị lỗi như trên. Đây là bảng của mình

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| nhim1              |
| Nhim12             |
| nhim13             |
| nhim23             |
| performance_schema |
| sys                |
+--------------------+
8 rows in set (0.00 sec)

0
| Reply
Share
Avatar hoangdv @dinh.van.hoang
Jul 20th, 2018 2:09 a.m.

@con DB_DATABASE=Nhim13

0
| Reply
Share
Viblo
Let's register a Viblo Account to get more interesting posts.