Laravel.Комманда php artisan migrate выдает ошибку?

Я пробую изучать Laravel. Начал новый проект по туториалу https://laracasts.com/series/laravel-from-scratch-... .

При вводе комманды :

php artisan migrate

я получаю ошибку:

Illuminate\Database\QueryException  : could not find driver (SQL: select * from information_schema.tables where table_schema = blog and table_name = migrations)

  at /home/morilon/php_proj/blog/vendor/laravel/framework/src/Illuminate/Database/Connection.php:664
    660|         // If an exception occurs when attempting to run a query, we'll format the error
    661|         // message to include the bindings with SQL, which will make this exception a
    662|         // lot more helpful to the developer instead of just the database's errors.
    663|         catch (Exception $e) {
  > 664|             throw new QueryException(
    665|                 $query, $this->prepareBindings($bindings), $e
    666|             );
    667|         }
    668| 

  Exception trace:

  1   PDOException::("could not find driver")
      /home/morilon/php_proj/blog/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:68

  2   PDO::__construct("mysql:host=127.0.0.1;port=3306;dbname=blog", "root", "", [])
      /home/morilon/php_proj/blog/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:68

  Please use the argument -v to see more details.


Что значит : could not find driver (SQL: select * from information_schema.tables where table_schema = blog and table_name = migrations) ?

После установки я удалил и установил заново MySQL, просто пароль забыл.
При переустановке использовал такие комманды:

pkg --get-selections | grep mysql
sudo apt-get remove --purge [everything that came up]
sudo apt-get autoremove && sudo apt-get autoclean
sudo apt-get install mysql-server
sudo apt install php-mysql

Что то устанавливал, не знаю точно что помогло. Наверно
sudo apt-get install php-pear php7.2-curl php7.2-dev php7.2-gd php7.2-mbstring php7.2-zip php7.2-mysql php7.2-xml


Теперь показывает
Illuminate\Database\QueryException  : SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: NO) (SQL: select * from information_schema.tables where table_schema = blog and table_name = migrations)
  • Вопрос задан
  • 27733 просмотра
Пригласить эксперта
Ответы на вопрос 8
@matt5346
Привет, еще такой вариант возможен, для этого необходимо:
1. Прописать php --ini, найти этот файл и открыть в редакторе,
2. Разкомментить ;extension=pdo_mysql, для этого надо просто убрать ";" - точку с запятой,
3. И затем пробовать php artisan migrate.
Ответ написан
@minusamix
В терминале вбиваешь php -i
Ищешь вот такую строчку "Loaded Configuration File => путь до php.ini"
Заходишь в этот файл, ищешь ";extension=pdo_mysql", и разкоменти т.е убираешь точку с запятой.
Радуешься как я)
Ответ написан
spacenear
@spacenear
React Web Developer
У меня была такая же ошибка - помогла очиска кэша в laravel
Ответ написан
Комментировать
@bagzon
Backend PHP, NodeJs, JS
Попробуй нативно в консоле подключиться с мускулу, проверь что твоя БД на месте к которой пытаешься подключиться.
Далее если успех, попробуй создай test.php и в нем опять же нативно только на PHP подключись к БД и сделай выборку любую.
И есть подозрение что на каком то этом этапе у тебя все упадет. Это и будет твоим ответом на вопрос
Ответ написан
@Merzley
Вероятнее всего как раз драйвер и не установлен. Проверьте, установлен ли пакет php-pdo-mysql.
Ответ написан
@Dinmukhamed54
Добрый день,

Только что возникла эта проблема во время конфигурации в хосте ps.kz. Проблема была в том, что я указал хост как локальный, забыл что в хостинге БД не лежит на локальной машине. Нужно сперва после создания БД, взять адрес хоста :-)

Dinmukhamed Tezekbayev
Ответ написан
Комментировать
@Nentra
Инструкция кто сталкивается с этим в первый раз.
https://www.youtube.com/watch?v=SlcMyHvHno4
Ответ написан
Комментировать
salvadoregunacci
@salvadoregunacci
Если используешь OpenServer.
Попробуй написать эту команду не в терминале редактора в котором пишешь, а кликнуть по значку OpenServer, выбрать "Дополнительно" => "Консоль"

Теперь в консоли переходишь в папку, где лежит проект:
cd domains/my-project

и сделай миграцию в этой консоли:
php artisan migrate

Должно сработать, мне способ с "extension=pdo_mysql" не помог, получилось именно так
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы