Yêu cầu thg 7 14, 2018 1:06 CH 1167 0 1
  • 1167 0 1
0

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

Chia sẻ
  • 1167 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 CÂU TRẢ LỜI


Đã trả lời thg 7 16, 2018 1:16 SA
Đã được chấp nhận
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 🤔

Chia sẻ
Avatar NHim @con
thg 7 16, 2018 8:06 SA

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
Avatar Tran Duc Thang @thangtd90
thg 7 16, 2018 9:16 SA

@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ứ 😄

Avatar NHim @con
thg 7 16, 2018 3:40 CH

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)

Avatar Tran Duc Thang @thangtd90
thg 7 17, 2018 12:45 SA

@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;
Avatar NHim @con
thg 7 17, 2018 8:04 SA

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)

Avatar hoangdv @dinh.van.hoang
thg 7 20, 2018 2:09 SA

@con DB_DATABASE=Nhim13

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí