Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment importer une base de données à l'aide de la ligne de commande

Si vous n'êtes pas familier avec l'utilisation de SSH, il est plus facile d'importer une base de données en utilisant Adminer. Cependant, si votre base de données est très volumineuse (par exemple, plus de 1 Go), il peut être plus facile d'importer une base de données à l'aide de MySQL à partir de la ligne de commande.

Ces instructions supposent que vous avez exporté votre base de données à l'aide de la ligne de commande, mais fonctionneront avec n'importe quel fichier d'exportation de base de données se terminant par .sql ou .sql.gz .

Si vous n'avez pas encore copié le fichier contenant votre fichier d'exportation de base de données sur votre serveur, vous devez d'abord utiliser SFTP pour le copier sur votre serveur. Vous devez SFTP le fichier sur le serveur en utilisant le même utilisateur système qui possède l'application.

Ensuite, connectez-vous en SSH à votre serveur avec le même utilisateur que vous avez utilisé pour SFTP le fichier sur votre serveur.

Une fois connecté via SSH, vous souhaiterez accéder au répertoire dans lequel vous avez téléchargé ou exporté votre base de données. Si vous avez suivi notre guide pour exporter votre base de données en utilisant la ligne de commande, alors votre fichier d'exportation de base de données sera dans le répertoire où vous avez exécuté le mysqldump commande. Sauf si vous avez changé de répertoire après vous être connecté via SSH, ce sera le répertoire de l'utilisateur de votre système ServerPilot :/srv/users/SYSUSER , avec SYSUSER étant votre utilisateur système réel.

La commande correcte à exécuter pour importer la base de données dépend de l'extension de fichier du vidage de base de données exporté.

Si le fichier se termine par .sql.gz , utilisez la commande suivante pour importer le fichier, où DB_NAME est le nom d'une base de données existante dans laquelle vous souhaitez importer l'exportation et DB_USER est votre nom d'utilisateur de base de données associé à cette base de données :

zcat DB_NAME.sql.gz | mysql --password --user DB_USER DB_NAME

Si le fichier se termine uniquement par .sql (il n'y a pas de .gz ), utilisez la commande suivante pour importer le fichier :

cat DB_NAME.sql | mysql --password --user DB_USER DB_NAME

Les commandes d'importation fournies ci-dessus supposent que vous vous trouvez dans le même répertoire que celui où se trouve le fichier d'exportation de la base de données. Si vous n'êtes pas dans le même répertoire, vous devrez spécifier le chemin complet (par exemple, /srv/users/SYSUSER/some-directory/DB_NAME.sql.gz ) au fichier d'exportation de la base de données dans la commande.

Une fois que vous avez exécuté l'une des commandes ci-dessus, vous serez invité à saisir le mot de passe de l'utilisateur de la base de données. Après avoir entré le mot de passe correct, le processus d'importation commencera. Si la base de données est plutôt volumineuse, cela peut prendre un certain temps. Aucune sortie ne sera renvoyée si l'importation réussit et vous serez renvoyé à l'invite de commande où vous pourrez saisir à nouveau des commandes.

Remarque  :Le nom d'utilisateur et le mot de passe MySQL ne le sont pas identique au mot de passe de l'utilisateur système que vous avez utilisé pour vous connecter en SSH à votre serveur. Si vous ne vous souvenez pas du mot de passe de l'utilisateur de votre base de données, vous pouvez suivre notre guideici pour le réinitialiser.