bases_de_donnees:mysql:administration
Table des matières
Administration de MySQL
Cette page tient compte d'un OS Linux.
Opérations de base
Commande | |
---|---|
Démarrer | $ sudo service mysql start . |
Changer de mot de passe root | $ mysqladmin -u root password NEWPASSWORD . |
Si aucun mot de passe n'a été demandé lors de l'installation de MySQL, le mot de passe par défaut est probablement mysql
:
sudo mysql --user=root mysql
mysql
Démarrer la ligne de commande mysql
avec mysql -h localhost -u root -p
.
Créer une base de données
CREATE DATABASE databasename;
Créer un utilisateur
CREATE USER username IDENTIFIED BY 'password';
Donner des privilèges
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER,INDEX on <DBNAME>.* TO '<USERNAME>'@'<SERVER_HOSTNAME>' IDENTIFIED BY '<PASSWORD>'; FLUSH PRIVILEGES;
Vérifier les privilèges :
SHOW GRANTS FOR <USERNAME>@<JIRA_SERVER_HOSTNAME>;
Exécuter un fichier SQL sur une base de données
mysql -u yourusername -pyourpassword yourdatabase < text_file.sql
Permettre les connexions externes
Permet les connexions externes. Pour des raisons de sécurité on essaie le plus possible d'éviter ce genre de situation, mais s'il faut le faire, utiliser un bon mot de passe pour l'utilisateur qui a accès à l'externe.
L'exemple utilise l'utilisateur root
dans la commande GRANT
, mais il est fortement recommandé d'utiliser un autre utilisateur.
- Ouvrir le fichier de configuration de MySQL qui est
/etc/mysql/my.cnf
:- Commenter la ligne
bind-address = 127.0.0.1
. - Commenter la ligne
skip-external-locking
. - Redémarrer MySQL :
# service mysql restart
.
- Ouvrir une session MySQL avec
mysql -u root -p
.- Exécuter la commande :
GRANT ALL PRIVILEGES ON *.* TO root@'%' IDENTIFIED BY 'password';
- Exécuter la commande :
FLUSH PRIVILEGES;
Maintenant les connexions remote seront acceptées.
Dump d'une base de données
$ mysqldump --opt -u [uname] -p[pass] [dbname] > [backupfile.sql]
Avec Windows
Grant user on MySQL Server
- Ouvrir un terminal de commandes sur Windows →
cmd
. - Exécuter la commande dans le répertoire
MySQL Server\bin
:mysql -u root –password=[password]
. - Dans le prompt de MySQL, entrer la commande :
GRANT ALL PRIVILEGES ON *.* TO 'USERNAME'@'IP' IDENTIFIED BY 'PASSWORD';
- L'IP peut être remplacé par
%
pour permettre les connexions de n'importe quel hôte ou adresse IP.
- Ensuite faire :
mysql> FLUSH PRIVILEGES;
mysql> exit;
bases_de_donnees/mysql/administration.txt · Dernière modification : 2022/02/02 00:42 de 127.0.0.1