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
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
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 :
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)
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)
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)
DROP TABLE tb_name ;
Modifier table :
ALTER TABLE tb_name;
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)
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;
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)
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)
INSERT INTO tb_name (col1,col2,...) VALUES|VALUE ('STRING',NUM...);
Insérer un utilisateur, tous les champs ont des valeurs :
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
mysql> SELECT * FROM students; +----------+------+--------+--------+ | Name | Age | Gender | Course | +----------+------+--------+--------+ | ZhangSan | NULL | M | NULL | | LiSi | NULL | F | NULL | +----------+------+--------+--------+ 2 rows in set (0.01 sec)
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)
Instruction SELETE :
l'instruction selecte est divisée en deux situations,
Supprimer les données :
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)
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 | +---------------+---------+
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)
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)
以上就是MySQL基本命令的内容,更多相关内容请关注PHP中文网(www.php.cn)!