Intereting Posts
Безопасно ли хранить пароль в сеансе? Regex для получения информации из квадратных скобок Как включить использование HTTP_RANGE на сервере PHP. Может ли кто-нибудь объяснить функцию pfsockopen для меня? (постоянный сокет) Являются ли глобальные константы PHP хорошей современной практикой развития? разделять ключевые слова для post php mysql Laravel 4: копировать в таблицу загружать больше содержимого из массива с помощью codeigniter Невозможно Извлечь данные из базы данных в тег скрипта при использовании графика Пространства $ _POST, преобразованные в символы подчеркивания PHP ожидает завершения операций файловой системы (например, file_put_contents), прежде чем двигаться дальше? Может кто-нибудь сказать мне, почему мой check_password не работает в codeigniter Laravel 5 PDOException не удалось найти драйвер Почему я получаю исключение JSON, пытающееся загрузить данные из URL-адреса хоста? Twiiter Bootstrap карусель делает динамический с PHP

Не удалось подключиться к локальному серверу MySQL с помощью Laravel

Когда я запускаю эту команду find / -name my.cnf я нахожу два местоположения для my.cnf

  • /opt/lampp/etc/my.cnf
  • /etc/mysql/my.cnf

Я не понимаю, какой из них используется сервером MySQL?

И, когда я запускаю команду php artisan migrate , я получаю эту ошибку

  [PDOException] SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket ' /var/run/mysqld/mysqld.sock' (2) 

Вы можете очень четко увидеть путь ошибки, показывающий /var/run/mysqld/mysqld.sock (На самом деле, в моей системе / рабочем столе. В «папке запуска» нет имени папки «mysqld»)

 I have a `mysql.sock` file inside /opt/lampp/var/mysql/mysql.sock 

Итак, что может быть проблемой. ?? Пожалуйста помоги. Я задал вопрос здесь, связанный с адресом-адресом, отсутствующим в файле my.cnf – Laravel 3 часа назад, но ответа до сих пор нет.

Прежде всего,

  • Найдите файл php.ini в своей системе с помощью команды $ php -i |grep php\.ini ИЛИ нажмите, где я могу найти php.ini для php-cli .
  • Откройте файл php.ini .
  • И убедитесь, что эти строки присутствуют или нет.

    a) extension=mysql.so b) extension=pdo_mysql.so

  • Если «Да», удалите (;) это перед ними.
  • Если нет, запустите эту команду sudo apt-get install php5-mysql

Теперь наберите команду php artisan migrate . Я уверен, что вы получите ошибку

не может подключаться к локальному серверу MYSQL через сокет

Теперь,

  • Изменить адрес привязки с localhost на 127.0.0.1
  • Run /opt/lampp/bin/php .
  • После запуска, если вы

"невозможно загрузить динамическую библиотеку"

Затем удалите php_mssql.dll extension (для не-окон)

  • Если не получить ошибку, перейдите непосредственно в файл Project-Name-Folder / config / database.php и добавьте этот код 'unix_socket' => '/opt/lampp/var/mysql/mysql.sock' ,

Найдите полный путь mysql.sock и добавьте его

 'mysql' => [ 'driver' => 'mysql', 'host' => env('DB_HOST', 'localhost'), 'database' => env('DB_DATABASE', 'danishLara'), 'username' => env('DB_USERNAME', 'root'), 'password' => env('DB_PASSWORD', ''), 'unix_socket' => '/opt/lampp/var/mysql/mysql.sock', //Add this line here 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '', 'strict' => false, ], 

Я думаю, что вам нужно удалить лампу, лучше использовать ручную настройку конфигурации. Mysql и apache2 manualy не используют лампу!

Убедитесь, что MySQL работает сначала (просто, но хорошо проверять!) И убедитесь, что выполняется правильная установка MySQL (если у вас установлена ​​LAMP, а также автономная установка MySQL).

Если вы подключаетесь с использованием localhost , попробуйте подключиться с помощью 127.0.0.1 . Это может использовать соединитель TCP / IP вместо сокета – только обходной путь.