Maison > base de données > tutoriel mysql > le corps du texte

Commandes de base MySQL

黄舟
Libérer: 2017-01-16 13:27:09
original
1071 Les gens l'ont consulté

Méthodes d'installation de MySQL
Il existe trois méthodes d'installation de MySQL, l'une est l'installation de RPM, l'autre est l'installation de compilation de code source et l'autre est l'installation de packages au format binaire universel.

Installation via RPM, vous pouvez directement utiliser la commande yum pour installer ou télécharger le package RPM puis l'installer

commande d'installation yum :
yum -y install mysql-server
Le système résoudra automatiquement les dépendances du problème et installera également le client MySQL.

Catégories de commandes en mode interactif mysql :
Commandes client : commandes exécutées sur le client

Commandes serveur : exécutées sur le serveur et les résultats sont renvoyés au client. Le terminateur d'instruction doit être utilisé. La valeur par défaut est ";" : ce sont les informations situées dans la mémoire lors de l'exécution de mysql. Les données ne sont disponibles qu'au démarrage de mysql. vide.

test : base de données utilisée pour tester

mysql : base de données mysql Commandes de base MySQL

Répertoire de la base de données MySQL :



Vous pouvez voir qu'il n'y a pas de base de données information_schema car il est stocké en mémoire.

Commandes courantes MySQL :

DDL : Définir les objets de la base de données :
CREATE :

[root@host2 ~]# ls /var/lib/mysql/
ibdata1  ib_logfile0  ib_logfile1  mysql  mysql.sock  test
Copier après la connexion
ALTER :


DROP :

DML : Langage de manipulation de données
INSÉRER

MISE À JOUR

DELETE

Langage de contrôle de données DCL
GRANT :

REVOKE :

Créer une base de données :
CREATE DATABASE db_name;

CREATE DATABASES IF NOT EXISTS testdb;


Supprimer la base de données :

DROP DATABASE db_name;


Créer une table :

CREATE TABLE tb_name(col1,col2,...) col1, col2 sont les noms de champs
mysql> CREATE DATABASE test_db;
Query OK, 1 row affected (0.00 sec)
mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| test               |
| test_db            |
+--------------------+
4 rows in set (0.01 sec)
Copier après la connexion

Remarque : La table dépend de la base de données, donc avant de créer la table , Assurez-vous de spécifier la base de données par défaut, utilisez la commande
USER DATABASE; pour spécifier la base de données
Créez une table nommée étudiant, contenant trois champs, Nom, Âge, Sexe

mysql> DROP DATABASE test_db;
Query OK, 0 rows affected (0.00 sec)
mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| test               |
+--------------------+
3 rows in set (0.00 sec)
Copier après la connexion

Afficher une certaine table dans la base de données :
SHOW TABLES FROM db_name;

Afficher la structure de la table :
DESC table_name;

mysql> CREATE TABLE students(Name CHAR(20) NOT NULL, Age TINYINT UNSIGNED,Gender CHAR(1) NOT NULL);
Query OK, 0 rows affected (0.01 sec)
mysql> SHOW TABLES;
+-------------------+
| Tables_in_test_db |
+-------------------+
| students          |
+-------------------+
1 row in set (0.00 sec)
Copier après la connexion
Supprimer la table :

DROP TABLE tb_name ;

Modifier table :
ALTER TABLE tb_name;

MODIFY : Modifier un champ, modifier les attributs du champ, le nom du champ ne change pas
mysql> DESC students;
+--------+---------------------+------+-----+---------+-------+
| Field  | Type                | Null | Key | Default | Extra |
+--------+---------------------+------+-----+---------+-------+
| Name   | char(20)            | NO   |     | NULL    |       |
| Age    | tinyint(3) unsigned | YES  |     | NULL    |       |
| Gender | char(1)             | NO   |     | NULL    |       |
+--------+---------------------+------+-----+---------+-------+
3 rows in set (0.00 sec)
Copier après la connexion

CHANGER : Modifier un champ, changez le nom du champ

ADD : Ajouter un champ

DROP : Supprimer le champ

Les informations d'aide peuvent être interrogées via la commande d'aide :

help CREATE TABLE ;

Ajouter un champ
Par exemple : modifier la table des étudiants créée précédemment et ajouter un champ cours,


Modifier le nom du champ, par exemple changer le nom du champ cours ajouté ci-dessus au cours


Supprimer un champ :
DROP col_name;

Insérer des données :
mysql> ALTER TABLE students ADD course VARCHAR(100);
Query OK, 0 rows affected (0.00 sec)
Records: 0  Duplicates: 0  Warnings: 0
mysql> DESC students;
+--------+---------------------+------+-----+---------+-------+
| Field  | Type                | Null | Key | Default | Extra |
+--------+---------------------+------+-----+---------+-------+
| Name   | char(20)            | NO   |     | NULL    |       |
| Age    | tinyint(3) unsigned | YES  |     | NULL    |       |
| Gender | char(1)             | NO   |     | NULL    |       |
| course | varchar(100)        | YES  |     | NULL    |       |
+--------+---------------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
Copier après la connexion

La commande ci-dessus signifie : insérer des données dans un tableau , le nom du champ est col1 , col2,... Si la valeur insérée est une chaîne, placez-la entre guillemets. S'il s'agit d'une valeur numérique, utilisez directement des nombres. Si chaque champ reçoit une valeur, il n'est pas nécessaire d'écrire le nom du champ
mysql> ALTER TABLE students CHANGE course Course VARCHAR(100);
Query OK, 0 rows affected (0.00 sec)
Records: 0  Duplicates: 0  Warnings: 0
mysql> DESC students;
+--------+---------------------+------+-----+---------+-------+
| Field  | Type                | Null | Key | Default | Extra |
+--------+---------------------+------+-----+---------+-------+
| Name   | char(20)            | NO   |     | NULL    |       |
| Age    | tinyint(3) unsigned | YES  |     | NULL    |       |
| Gender | char(1)             | NO   |     | NULL    |       |
| Course | varchar(100)        | YES  |     | NULL    |       |
+--------+---------------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
Copier après la connexion
Par exemple : Insérez deux données dans la table des étudiants, Zhang San et Li Si


INSERT  INTO  tb_name (col1,col2,...) VALUES|VALUE ('STRING',NUM...);
Copier après la connexion
Afficher les données




Insérer un utilisateur, tous les champs ont des valeurs :

Notez que tous les champs ont des valeurs, il n'est pas nécessaire de spécifier des noms de champs
mysql> INSERT INTO students (Name,Gender) VALUE ('ZhangSan','M'),('LiSi','F');
Query OK, 2 rows affected (0.00 sec)
Records: 2 Duplicates: 0 Warnings: 0
Copier après la connexion

Modifier les données :
mysql> SELECT * FROM students;
+----------+------+--------+--------+
| Name     | Age  | Gender | Course |
+----------+------+--------+--------+
| ZhangSan | NULL | M      | NULL   |
| LiSi     | NULL | F      | NULL   |
+----------+------+--------+--------+
2 rows in set (0.01 sec)
Copier après la connexion
UPDATE tb_name SET column=value WHERE condition


Par exemple : changer le nom du cours de ZengChengpeng en Développer

mysql> INSERT INTO students VALUES ('ZengChengpeng',28,'M','IT');
Query OK, 1 row affected (0.00 sec)
mysql> SELECT * FROM students WHERE Name='ZengChengpeng';
+---------------+------+--------+--------+
| Name          | Age  | Gender | Course |
+---------------+------+--------+--------+
| ZengChengpeng |   28 | M      | IT     |
+---------------+------+--------+--------+
1 row in set (0.00 sec)
Copier après la connexion

Instruction SELETE :

l'instruction selecte est divisée en deux situations,


Supprimer les données :

DELECT FROM tb_name WHERE condition
mysql> UPDATE students SET Course='Develop' WHERE Name='ZengChengpeng';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0
mysql> SELECT * FROM students WHERE Name='ZengChengpeng';
+---------------+------+--------+---------+
| Name          | Age  | Gender | Course  |
+---------------+------+--------+---------+
| ZengChengpeng |   28 | M      | Develop |
+---------------+------+--------+---------+
1 row in set (0.00 sec)
Copier après la connexion

Créer un utilisateur :
CRÉER UN UTILISATEUR 'USERNAME' @'HOST' IDENTIFIÉ PAR 'PASSWORD';
DROP USER 'USERNAME'@'HOST'; > IP :

选择:指定以某字段作为搜索码,做逻辑比较,筛选符合条件的行。WHERE指定选择条件
    
投影:指定以某字段作为搜索码,做逻辑比较,筛选符合条件的字段。
mysql> SELECT Name,Course FROM students WHERE Gender='M';   
+---------------+---------+
| Name          | Course  |
+---------------+---------+
| ZhangSan      | NULL    |
| ZengChengpeng | Develop |
+---------------+---------+
Copier après la connexion
HOSTNAME :


NETWORK :

Wildcard : les caractères génériques sont placés entre guillemets

_ : le trait de soulignement correspond à n'importe quel caractère : par exemple 172.16 .0. _

% : correspond à n'importe quel caractère :

jerry@'%'

Autorisations utilisateur :
Ajouter des autorisations :
GRANT pri1,pri2, ... ON DB_NAME.TB_NAME TO 'USERNAME'@'HOST' [IDENTIFIED BY 'PASSWORD'];
pri1 pri2 représente le nom de l'autorisation, et toutes les autorisations sont représentées par TOUS LES PRIVILÈGES
Annuler les autorisations :
REVOKE pri1, pri2,.. ON DB_NAME.TB_NAME FROM 'USERNAME'@'HOST';

Créer un exemple d'utilisateur :


Afficher l'autorisation de l'utilisateur :
AFFICHER LES SUBVENTIONS POUR 'USERNAME'@'HOST ';


Exemple : donnez à l'utilisateur Jerry toutes les autorisations sur toutes les tables de la base de données test_db

mysql> GRANT ALL PRIVILEGES ON test_db.* TO 'jerry'@'%';
Query OK, 0 rows affected (0.00 sec)
mysql> SHOW GRANTS FOR 'jerry'@'%';
+------------------------------------------------------------------------------------------------------+
| Grants for jerry@%                                                                                   |
+------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'jerry'@'%' IDENTIFIED BY PASSWORD '*09FB9E6E2AA0750E9D8A8D22B6AA8D86C85BF3D0' |
| GRANT ALL PRIVILEGES ON `test_db`.* TO 'jerry'@'%'                                                   |
+------------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)
Copier après la connexion
取消所有权限:
mysql> REVOKE ALL PRIVILEGES ON test_db.* FROM jerry@'%';
Query OK, 0 rows affected (0.00 sec)
mysql> SHOW GRANTS FOR 'jerry'@'%';                      
+------------------------------------------------------------------------------------------------------+
| Grants for jerry@%                                                                                   |
+------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'jerry'@'%' IDENTIFIED BY PASSWORD '*09FB9E6E2AA0750E9D8A8D22B6AA8D86C85BF3D0' |
+------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
Copier après la connexion

以上就是MySQL基本命令的内容,更多相关内容请关注PHP中文网(www.php.cn)!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal