Comment importer une grosse base de données dans Flywheel

Publié le 28 mars 2020 par Zast

J’ai profité de ce week-end pour faire quelques tests avec Flywheel pour mettre à jour certains de mes sites web sous WordPress et vu que j’ai eu un petit problème, je vous propose un petit tuto pour vous aider si vous avez le même souci. Pour travailler en local, j’utilise Flywheel qui me permet d’aller assez vite.

Habituellement, j’utilise l’import de Mysql (ou MariaDB) de Flywheel en cliquant sur Open Adminer pour importer ma base de données. C’est rapide à effectuer. Cependant, ce matin, j’ai eu un message d’erreur sur l’une de mes bdd :

Allowed memory size of xxxx bytes exhausted (tried to allocate xxxx bytes)

Il est impossible d’ajouter ma bdd car elle est trop grosse : 156 Mo (163 755 308 octets)

Il est possible de changer le fichier php.ini ou d’aller plus vite en utilisant directement mysql.

Si vous avez ce problème, la solution est assez simple en passant par la ligne de commande sous windows.

Vous tapez la commande CMD dans la recherche de Windows

Il faut se rendre à l’endroit où vous avez installé Flywheel. Je l’avais installé dans mon drive D. Dans mon cas, j’ai dû taper :

D:

puis

cd D:\sitedetest\Local\resources\extraResources\lightning-services\mysql-8.0.16+3\bin\win64\bin

Dans ce répertoire, j’ai copié mon fichier de base données que je voulais importer (exemple monficherdebackup.sql)

Ensuite, il faut regarder dans l’interface de Flywheel (onglet DATABASE) sur quel port votre serveur de base de données écoute. Dans mon cas, c’est le port 10023.

Je récupère aussi le nom de ma base de données (Database name) qui se nomme local en principe, l’utilisateur (Username) et le mot de passe (Password) qui sont en principe root .Ensuite dans la partie ligne de commande, je tape :

mysql -u root -proot local <monfichierdebackup.sql -P 10023

Cette commande lance mysql, le -u root correspond à mon username, -proot correspond à mon mot de passe, local correspond à mon nom de base de données, <monfichierdebackup.sql signifie que j’importe ma base de données et le -P 10023 c’est le port de serveur.

Bien entendu, ce n’est pas secure d’écrire un mot de passe en clair :). Mais je travaille en local pour faire des tests. Par contre en production, il ne faut pas mettre ce type de mot de passe et il ne faut pas l’écrire en clair.

D’ailleurs Mysql vous indiquera le message suivant :

mysql: [Warning] Using a password on the command line interface can be insecure.

Voilà, la base de données est importée. Vous pouvez ensuite travailler avec Adminer ou pour les puristes en lignes de commande 😉

L’article Comment importer une grosse base de données dans Flywheel est apparu en premier sur Paradoxe Temporel.