Laravel 5.1 - Connexion à la Base MySQL (MAMP)
Il y a des sujets en ligne qui sont de la discussion de ce problème, toutefois, je ne pouvais pas trouver tout bien rangé explication du problème ou de solides réponses pour la question. Ce que je cherche à atteindre est la connexion de Laravel 5.1 de MySQL Base de données de MAMP.
Dans mon config>app.php:
'default' => env('DB_CONNECTION', 'mysql'),
'mysql' => [
'driver' => 'mysql',
'host' => 'localhost:8889',
'database' => 'test',
'username' => 'root',
'password' => 'root',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'unix_socket' => '/Applications/MAMP/tmp/mysql/mysql.sock',
'prefix' => '',
'strict' => false,
],
Dans mon .env:
DB_HOST=localhost
DB_DATABASE=test
DB_USERNAME=root
DB_PASSWORD=root
J'ai aussi .env.exemple: (qui je crois n'a pas de fonctionnalité)
DB_HOST=localhost
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
J'ai aussi create_users_table.php
et create_password_resets_table.php
dans mon base de données>migrations (même si je n'ai pas exécuter de la migration:faire)
MAMP est de diriger et d'exécuter le serveur avec succès, comme il charge le projet sur localhost.
Voici mon MAMP paramètres:
Et la test
base de données est créée (avec tables et dans lequel j'ai déjà créé et utilisé dans mes autres projets, pas de Laravel.)
Même si tout semble correct pour moi, lors de la tentative de soumettre Auth formulaire, j'obtiens cette erreur:
PDOException dans Connector.php ligne 50:
ne pouvait pas trouver le pilote
dans Connector.php ligne 50
à PDO->__construct ('mysql:unix_socket=/Applications/MAMP/tmp/mysql/mysql.chaussette;dbname=test', 'root', 'root', array('0', '2', '0', false, false)) dans Connector.php ligne 50
à Connector->createConnection('mysql:unix_socket=/Applications/MAMP/tmp/mysql/mysql.sock;dbname=test', array('driver' => 'mysql', 'host' => 'localhost:8889', 'database' => 'test', 'username' => 'root', 'password' => 'root', 'charset' => 'utf8', 'classement' => 'utf8_unicode_ci', 'unix_socket' => '/Applications/MAMP/tmp/mysql/mysql.chaussette', 'prefix' => ", 'strict' => false, 'nom' => 'mysql'), array('0', '2', '0', false, false)) dans MySqlConnector.php ligne 22
et ainsi de suite...
- bonjour quelle version de MAMP vous utilisez?
- salut, 3.0.7.1
Vous devez vous connecter pour publier un commentaire.
Sur mac ou unix, vous devez inclure le socket chemin dans la configuration database.php fichier
je.e
'unix_socket' => '/Applications/MAMP/tmp/mysql/mysql.sock',
DB_SOCKET=/Applications/MAMP/tmp/mysql/mysql.sock
à mon.env
de fichiers et la connexion a été établie. Votre réponse m'a donné l'idée. merci et de voter.C'est assez simple pour moi, j'ai ajouté :8889 pour le localhost dans le .fichier env.
DB_HOST=localhost:8889
C'est parce que dans les préférences de MAMP, :8889 est le port par défaut.
Trouvé ma réponse. Voici un moyen pour résoudre ce problème:
La chose la plus importante pour moi a été la définition de la socket UNIX. Parce que j'ai un autre MYSQL sur ma machine - Laravel a tenté de se connecter à une base de données dans MYSQL processus.
La définition de l'UNIX pour MAMP base de données utilisée a parfaitement fonctionné. Essayez d'ajouter à votre configuration MYSQL dans database.php