Mysql en ligne de commande

MySQL : Connexion au serveur applicatif mysql:

mysql -h localhost -u root -p
ou
mysql -p (si connexion root)

localhost : nom de votre serveur mysql
u : user souhaité, ici root
p : signifie qu'il vas falloir entrer le pass du user

MySQL : Afficher tout les bases mysql:

show databases;

MySQL : Changer le mot de passe root

Changer le mot de passe root ou un autre utilisateur:
mysqladmin -u root -p password 'NouveauMotDePasse'
Entrez le mot de passe courant au prompt. Le mot de passe administrateur est immédiatement remplacé par celui passé en argument à la commande (dans l’exemple : « NouveauMotDePasse »).

Si vous ne désirez pas passer par le mode interactif (que le système vous demande le mot de passe courant), vous pouvez préciser l’ancien mot de passe directement sur a ligne de commande :
mysqladmin -u root -p 'ancien_motdepasse' password 'monmotdepasse'

Changer le mot de passe root par requête MySQL:


mysql -p (Connexion au serveur applicatif mysql)
mysql> use mysql
update user set password=PASSWORD('monmotdepasse') where User='root';

Pour que le changement de mot de passe soit pris en compte, il est nécessaire de « flusher » les privilèges (recharger les droits) :
mysql> flush privileges;

Utilisation/changement d’une base de données (USE)

mysql> USE demo;
ou directement lors de la connexion:
mysql -h tecfa -u schneide -p demo

Sauvegarder la base de données:

mysqldump -u root -p intime > intimeorig.sql

Restaurer une base de données:

mysql -h localhost -u root -p
MariaDB [(none)]>create database `intimeorig`;

mysql -u root -p intimeorig < intimeorig.sql

Supprimer une base de données:

MariaDB [(none)]>drop database intime;

Afficher les colonnes d'une table:

MariaDB [(none)]>show COLUMNS from computerreservation;

Renommer une table:

MariaDB [(none)]>alter table anciennetable rename to nouvelletable;

Pour connaître la valeur de vos variables MySQL

MariaDB [(none)]>SHOW VARIABLES;

Afficher les index d'une table:

MariaDB [intime]>SHOW index FROM table;
MariaDB [(none)]>SHOW index FROM table FROM bases;

Encodage MySQL

Pour connaître l'encodage d'une table j'ai trouvé cette possibilité:
show create table TABLE_IN_QUESTION;(regarder le CHARSET=XXX à la fin)

Pour connaître le charset de sa BDD
SELECT * FROM INFORMATION_SCHEMA.SCHEMATA WHERE SCHEMA_NAME = 'nom_base';

Exporter le résultat d’une requête vers un fichier texte avec délimiter point virgule:
SELECT id, userfirstname, userlastname FROM lgppuser INTO OUTFILE '/opt/bibliomondo/users_list.txt' FIELDS TERMINATED BY ';';

SELECT id, groupname FROM basegroup WHERE dtype = 'CustomerGroup' INTO OUTFILE '/opt/bibliomondo/usergroups_list.txt' FIELDS TERMINATED BY ';';

Pour Exporter le résultat d'un script vers un fichier texte, ajouter à la fin du fichier script :

INTO OUTFILE '/opt/bibliomondo/userexpired_list.txt' ;

SQL COUNT()

SELECT COUNT(*) FROM table

d