Laravel : Erreur [PDOException] : pilote introuvable dans PostgreSQL
P粉722409996
P粉722409996 2023-07-31 18:16:43
0
2
602
<p>Traduire : "J'essaie de me connecter à une base de données PostgreSQL via Laravel afin d'exécuter la commande php artisan migrate, mais cela ne semble pas réussir car elle lit le nom de la base de données MySQL.<br / ><br /> ;Voici les commandes du fichier database.php :</p><p><br /></p> <pre class="brush:php;toolbar:false;">'connections' => 'sqlite' => tableau( 'pilote' => 'sqlite', 'base de données' => __DIR__.'/../database/production.sqlite', 'préfixe' => '', ), 'mysql' => tableau( 'pilote' => 'mysql', 'hôte' => 'localhost', 'base de données' => 'base de données', 'nom d'utilisateur' => 'racine', 'mot de passe' => '', 'jeu de caractères' => 'utf8', 'collage' => 'utf8_unicode_ci', 'préfixe' => '', ), 'pgsql' => tableau( 'pilote' => 'pgsql', 'hôte' => 'localhost', 'base de données' => 'postgres', 'nom d'utilisateur' => 'postgres', 'mot de passe' => 'racine', 'jeu de caractères' => 'utf8', 'préfixe' => '', 'schéma' => 'public', ), 'sqlsrv' => tableau( 'pilote' => 'sqlsrv', 'hôte' => 'localhost', 'base de données' => 'base de données', 'nom d'utilisateur' => 'racine', 'mot de passe' => '', 'préfixe' => '', ), ),</pré> <p>Si je supprime le chemin vers MySQL, j'obtiens : </p> <pre class="brush:php;toolbar:false;">[InvalidArgumentException] Base de données [mysql] non configurée.</pre> <p><br /></p><hr /> <strong>Traduire : "Modifier : J'ai reçu une erreur 'PDOException : impossible de trouver le pilote' en essayant d'exécuter la commande php artisan migrate. J'utilise WAMP et sous Windows 8.1. La base de données utilise PostgreSQL."< /strong><p><br /></p> <p><br /></p><hr /> <strong>EDIT :</strong> Traduire : "J'ai essayé une série de solutions alternatives mais le problème n'est toujours pas résolu. J'ai vérifié php.ini dans Apache, WAMP (à partir du dossier php) et le fichier PostgreSQL. extension_dir est défini correctement comme suit -> extension_dir = "c:/wamp/bin/php/php5.5.12/ext/". extension=pdo_pgsql.dll n'a pas été commenté < dans les « Variables système » et j'ai redémarré l'ordinateur, mais toujours sans succès.<br /><br />Merci pour votre aide jusqu'à présent. <br /><br />Voici mon pilote php_pdo_driver.h et php_pdo.h situés dans C:Program Files (x86)PostgreSQLEnterpriseDB-ApachePHPphpSDKincludeextpdo<br /><br />Depuis phpinfo Informations obtenues : <br /><p><br /></p> <blockquote> <p>Traduire : "PHP version 5.5.12<br /><br /> Commande de configuration du compilateur MSVC11 (Visual C++ 2012) cscript /nologo configure.js "--enable-snapshot-build" "- - Disable-isapi" "--enable-debug-pack" "--sans-mssql" "--sans-pdo-mssql" "--sans-pi3web" "--with-pdo-oci=C:php- sdkoralex64instantclient10sdk ,shared" "--with-oci8=C:php-sdkoraclex64instantclient10sdk,shared" "--with-oci8-11g=C:php-sdkoraclex64instantclient11sdk,shared" "--enable-object-out-dir=../ obj /" "--enable-com-dotnet=shared" "--with-mcrypt=static" "--disable-static-analyze" "--with-pgo""</p><p>< ; br />≪/p> </blockquote><p><br /></p>
P粉722409996
P粉722409996

répondre à tous(2)
P粉043295337

"Pour PDOException : impossible de trouver le pilote pour l'erreur MySQL, s'il s'agit d'un système d'exploitation basé sur Debian

sudo apt-get -y install php5-mysql
P粉037450467

Traduire : "Assurez-vous de configurer la clé 'default' dans app/config/database.php.

Pour PostgreSQL, la configuration doit être 'default' => 'postgres'.

Si vous recevez [PDOException], vous ne pourrez pas recherchez une erreur de pilote, veuillez vérifier si vous avez installé la bonne extension PHP. Vous devez installer et activer pdo_pgsql.so et pgsql.so. La façon d'installer ces extensions varie selon le système d'exploitation

Pour Windows, l'extension pgsql devrait déjà être fournie avec. la version officielle. La distribution PHP est pré-téléchargée. Modifiez simplement votre fichier php.ini et décommentez les lignes suivantes extension=pdo_pgsql.so et extension=pgsql.so

De plus, dans php.ini, assurez-vous que extension_dir est défini sur. le bon répertoire. .il doit s'agir d'un dossier nommé extensions ou ext ou similaire dans votre répertoire d'installation PHP

Enfin, copiez libpq.dll de C:wampbinphpphp5.* vers C:wampbinapache*bin et redémarrez le tout via le service d'interface WampServer.

Si vous obtenez toujours l'exception, vous devrez peut-être ajouter le répertoire bin de PostgreSQL à votre variable d'environnement PATH.

Propriétés système -> Onglet Avancé -> Variables d'environnement

Dans le groupe « Variables système » dans la moitié inférieure de la fenêtre, faites défiler et recherchez l'entrée PATH.
  1. Sélectionnez-le et cliquez sur Modifier.
  2. À la fin de l'entrée existante, entrez le chemin complet vers votre répertoire bin postgres. Le dossier bin doit être situé à la racine de votre répertoire d'installation postgres.
  3. Redémarrez toutes les invites de commande ouvertes ou, pour être sûr, redémarrez votre ordinateur.
  4. Cela devrait résoudre n'importe quel problème. Pour plus d'informations, veuillez consulter :

http://php.net/manual/en/install.pecl.windows.php

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!