MYSQL

Notes MYSQL

 

Telechargement : ici

Installation windows :
dezippe le fichiers serveur ou on veut ( dans mon exemple c:\mysql)
dans le dossier mysql on crée in fichier my.ini
dans ce fichier on note :
[mysqld]
basedir= c:/mysql
datadir= c:/mysql/data

basedir est le dossier ou se situe les fichiers de mysql
datadir est le dossier ou seront placées les bases sql ( cela peu etre un autre endroit, le dossier sera créer a l initialisation.

un fois le fichier créé, on passe en mode commande ou dans powershell :
on se place dans le dossier c:\mysql\bin :
.\mysqld.exe –defaults-file=c:\mysql\my.ini –initialize
c’est avec cette commande que el dossier data est rée, si pas d’erreur, Mysql est maintenant fonctionnel

une fois ok on demarre le serveur:
.\mysqld.exe –console

on se connecte:
le passe temporaire root est placé dans le fichier erreur dans le dossier data crée
.\mysql.exe -u root -p

on rentre le mot de passe te c est ok
ne reste plus qu a changer le mot de passe :
alter user ‘root’@’localhost’ ientified by ‘ nouveaumotpasse’ ;

ne pas oublier les points virgule a la fin de chaque commande sql
il faut se déconnecter et se reconnecter

allumer sql
.\mysqld.exe –console

eteindre mysql
.\mysqladmin.exe -u root -p shutdown


quelques commandes :

se connecter sur une base distante ( on précise le port seulement si diffèrent) :
-u pour préciser un user
-h pour préciser une adresse ip
-P pour préciser le port ( en majuscule)
-p pour la demande de mot de passe

mysql -u nico -p -h 192.168.1.100 -P 33066
on peut directement inclure le mot de passe dans la commande( pas conseillé mais faisable) en collant(pas d’espace) le mot de passe a l’option -p
mysql -u nico -ppassword -h 192.168.1.100 -P 33066

ne pas oublier les points virgule a la fin de chaque commande sql

créér un utilisateur :
CREATE USER ‘adminbase’@’localhost’ IDENTIFIED BY ‘motdepasse’ ;
modifier le mot de passe :
SET PASSWORD FOR ‘adminbase’@’localhost’ = ‘newpasse’ ;
ou
ALTER USER ‘adminbase’@’localhost’  IDENTIFIED BY ‘newpasse’ ;
renommer l’utilisateur :
RENAME USER ‘adminbase’@’localhost’   TO ‘newadminbase’@’localhost’   ;
supprimer l’utilisateur :
DROP ‘adminbase’@’localhost’ ;

Afficher les bases
SHOW databases;

entrer dans une base :
USE mabase;

Afficher les tables de la base :
show tables ;

renomer une table :
RENAME TABLE ancien_nom_table TO nouveau_nom_table ;

afficher les paramètres d’une table:
DESCRIBE matable ;

lire les données d’une table:
select * from matable ;

Créer une base de données:
create database manouvellebase ;

créer une table (exemple table simple avec 3 champs) :
CREATE TABLE amis
(
id INT PRIMARY KEY NOT NULL AUTO_INCREMENT,
pseudo VARCHAR(100),
telephone VARCHAR(300)
)
;

insertion de données dans une table :
INSERT INTO amis VALUES (1,’nico’,’05.53.57.07.35′);

Créer une sauvegarde de base avec la date:
mysqldump -u root -ppassword mabase > /backupsql/backup_mabasec_$(date +%Y-%m-%d–%H-%M-%S).sql


chiffrement des données :
explications ici : 


 

commandes des base sur une base de données :

afficher toutes les colonnes d’une table :
SELECT * FROM matable ;

afficher certeines colonnes d’une tables :
SELECTcolonne1, colonne3, colonne5 FROM matable ;

afficher un alias du titre de la colonne( le nom du champs)
SELECT nomcli as NomClient, vilcli VilleClient FROM tableclient ;

eviter les doublons sur l’affichage d’une table :
SELECT DISTINCT(villeclient) FROM tableclient ;

trier l’affichage d’une table :
SELECT nomclient, chiffrea FROM tableclient ORDER BY chiffrea ;
sans precision le tri est en ordre croissant, il faut preciser DESC pour avoir un affichage decroissant :
SELECT nomclient, chiffrea FROM tableclient ORDER BY chiffrea DESC ;

Limiter l’affichage des données d’une table :
SELECT * FROM tableclient LIMIT 10 ;
affiche les 10 derniers enregistrements de la table

SELECT * FROM tableclient LIMIT 3,5 ;
afficher les 5 derniers enregistrements a partir du 3em enregistrement ( 3,5) .

utiliser une close WHERE
SELECT * FROM tableclient WHERE villeclient = ‘bergerac’ ;
bergerac est entre apostrophe car c’est une valeur.
rajouter un tri :
SELECT nomclient, chiffrea FROM tableclilent WHERE villeclient=’bergerac’ ORDER BY nomclient ;
rajouter une condition :
SELECT * FROM tableclient WHERE villeclinet=’bergerac’ AND chiffrea >=  150000 ;

la clause LIKE
SELECT nomclient, villeclient FROM tableclient  WHERE nomclient LIKE ‘%a%’ ;
% désigne un ou plusieurs caractères
_ désigne un seul caractère .


 

Les Jointures

SELECT nomclient, villeclient FROM tableclient, tablecommande WHERE tableclient.IDclient = tablecommande.IDclient

IDlclient est appelé une clé étrangère, elle doit être identique pour chaque clients dans les 2 tables