El contenido del artículo "Prefacio" es aproximadamente el funcionamiento básico de la base de datos.
"Columna de pertenencia" MySQL
Página de inicio personal "Enlace de página de inicio"
"Autor" Sr. Maple Leaf (fy)
"Mr. Maple Leaf es un poco literario" "Compartir oraciones"
A nadie le gusta estar solo, pero tampoco les gusta estar decepcionados.
- Haruki Murakami, "Madera noruega"
Tabla de contenido
- 1. Crear/ver base de datos
- 2. Eliminar la base de datos
- 3. Conjunto de caracteres de la base de datos y reglas de validación de la base de datos
- Cuarto, el impacto de las reglas de validación en la base de datos.
- 5. Modificar la base de datos
- 6. Copia de seguridad y recuperación de la base de datos
- Siete, revisa la conexión a la base de datos.
1. Crear/ver base de datos
Crear sintaxis de base de datos:
CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [,create_specification] ...]
create_specification
Opciones:
[DEFAULT] CHARACTER SET charset_name
[DEFAULT] COLLATE collation_name
ilustrar:
db_name
es el nombre de la base de datos creada- palabras clave en mayúscula
- [] es opcional, puede optar por no escribir
- JUEGO DE CARACTERES: especifica el juego de caracteres utilizado por la base de datos
- COLLATE: especifica las reglas de validación para el conjunto de caracteres de la base de datos
Ver todas las bases de datos:
show databases;
[IF NOT EXISTS]
Significa que si la base de datos existe, no se creará, y si la base de datos no existe, se creará. Por ejemplo, cree una test
base de datos existente
create database if not exists test;
或者 create database test; // 直接创建
crear si no existe
create database if not exists test1;
La base de datos se crea esencialmente mediante la creación de un directorio /var/lib/mysql/
bajo
2. Eliminar la base de datos
gramática:
DROP DATABASE [IF EXISTS] db_ name;
db_name
es el nombre de la base de datos creada- [] es opcional, puede optar por no escribir
El resultado después de realizar la eliminación:
- La base de datos correspondiente no se puede ver dentro de la base de datos.
- La carpeta de la base de datos correspondiente se elimina, se elimina en cascada y se eliminan todas las tablas de datos que contiene
- La base de datos se elimina es esencialmente para eliminar un directorio
/var/lib/mysql/
bajo
Aviso: No elimine la base de datos a voluntad, intente cambiar el nombre y hacer una copia de seguridad de la base de datos innecesaria
3. Conjunto de caracteres de la base de datos y reglas de validación de la base de datos
Crear una base de datos llamada db1
create database db1;
ilustrar: Cuando creamos una base de datos sin especificar el juego de caracteres y las reglas de verificación, el sistema usa el juego de caracteres predeterminado: , y las utf8
reglas de verificación
son: , que se establece en el utf8_ general_ ci
archivo de configuración de MySQL Si especificamos el juego de caracteres o las reglas de verificación nosotros mismos , no lo hará /etc/my.cnf
cuando se utilice el juego de caracteres predeterminado del sistema y las reglas de validación.
También podemos especificar para crear una utf8
base de datos db2 utilizando un conjunto de caracteres
create database db2 charset=utf8;
或者 create database db2 CHARACTER SET utf8
También puede crear una base de datos db3 utf
con un conjunto de caracteres y reglas de clasificaciónutf8_general_ci
create database db3 charset=utf8 collate utf8_general_ci;
¿Qué son los juegos de caracteres y las reglas de validación? ?
- El conjunto de caracteres es el conjunto de códigos y la base de datos se utiliza para representar y almacenar datos.
- Las reglas de validación son un método para detectar y verificar la integridad de los datos, la codificación que la base de datos necesita usar al comparar campos (leer datos, comparar datos)
Independientemente de las operaciones realizadas en los datos, la biblioteca de la base de datos debe asegurarse de que el formato de codificación sea consistente
Verifique el conjunto de caracteres predeterminado del sistema (base de datos actual) ( /etc/my.cnf
establecido en el archivo de configuración de MySQL)
show variables like 'character_set_database';
Ver reglas de validación predeterminadas del sistema (base de datos actual)
show variables like 'collation_database';
Compruebe el conjunto de caracteres admitido por la base de datos. El conjunto de caracteres controla principalmente el idioma que se utiliza. Por ejemplo, utf8 puede usar chino
show charset;
Ver las reglas de verificación del juego de caracteres admitidas por la base de datos.
Cada regla de verificación coincide con un juego de caracteres. Por ejemplo, utf8_general_ci
el juego de caracteres que coincide con la regla de verificación esutf8
Cuarto, el impacto de las reglas de validación en la base de datos.
no entre mayúsculas y minúsculas
Cree una base de datos con reglas de validación usando utf8_ general_ ci [sin distinción entre mayúsculas y minúsculas]
create database test1 charset=utf8 collate utf8_general_ci;
crear tabla insertar datos
use test1;
create table person(name varchar(20));
insert into person values('a');
insert into person values('A');
insert into person values('b');
insert into person values('B');
En el directorio de la base de datos, db.opt
el archivo es para almacenar las reglas de codificación de la biblioteca.
cat /var/lib/mysql/test1/db.opt
Ver información de la tabla
Buscar personajesa
select * from person where name='a';
a
Ambos A
y se detectan, lo que indica que las reglas de inspección utf8_general_ci
no distinguen entre mayúsculas y minúsculas
distingue mayúsculas y minúsculas
Cree una base de datos con reglas de validación usando utf8_ bin [sensible a mayúsculas y minúsculas]
create database test2 collate utf8_bin;
crear tabla insertar datos
use test2;
create table person(name varchar(20));
insert into person values('a');
insert into person values('A');
insert into person values('b');
insert into person values('B');
En el directorio de la base de datos, db.opt
el archivo es para almacenar las reglas de codificación de la biblioteca.Busca
caracteres a
, solo se encuentran aquellos que cumplen las condiciones, lo que indica que las reglas de inspección utf8_bin
distinguen entre mayúsculas y minúsculas.
5. Modificar la base de datos
Mostrar la declaración al crear la base de datos
show create database 数据库名;
ilustrar:
- MySQL recomienda que usemos palabras clave en mayúsculas, pero no es obligatorio.
- El acento grave `` del nombre de la base de datos es para evitar que el nombre de la base de datos se use solo como una palabra clave
/*!40100 default.... */
Esto no es un comentario, significa que la versión actual de mysql es mayor que la versión 4.01, solo ejecute esta oración, si es menor que, no ejecute
modificar base de datos
gramática:
ALTER DATABASE db_name [alter_spacification [,alter_spacification]...]
alter_spacification
opciones:
alter_spacification:
[DEFAULT] CHARACTER SET charset_name
[DEFAULT] COLLATE collation_name
- palabras clave en mayúscula
- [] es opcional, puede optar por no escribir
ilustrar: La modificación de la base de datos se refiere principalmente a la modificación del juego de caracteres de la base de datos y las reglas de verificación.
Por ejemplo, test2
el juego de caracteres de lagbk
alter database test1 charset=gbk collate gbk_chinese_ci;
Aviso: La base de datos actual no admite la modificación del nombre de la base de datos, anteriormente se admitía
6. Copia de seguridad y recuperación de la base de datos
respaldo
gramática
mysqldump -P3306 -u root -p -B 数据库名 > 数据库备份存储的文件路径
Nota: > es una redirección de salida.
Por ejemplo, para test1
hacer una copia de seguridad de la biblioteca en un archivo, debe salir de la conexión mysql
mysqldump -P3306 -uroot -p -B test1 > /home/fy/mysql/test1.sql
Abra vim para ver, la operación efectiva de los datos + datos está respaldada
reducción
gramática:
source 备份的文件(路径)
Nota: > es la redirección de salida,
elimínela test1
, pruébela,
restáurela test1
y opere bajo la conexión mysql
source /home/fy/mysql/test1.sql;
Verifique la base de datos, los datos han sido restaurados.
Precauciones:
Si la copia de seguridad no es de toda la base de datos, sino de una de las tablas
mysqldump -uroot -p 数据库名 表名1 表名2... > 备份的文件(路径),如:/mytest.sql
Copia de seguridad de múltiples bases de datos al mismo tiempo
mysqldump -u root -p -B 数据库名1 数据库名2 ... > 数据库存放路径
Si el parámetro -B no se incluye al hacer una copia de seguridad de una base de datos, al restaurar la base de datos, primero debe crear una base de datos vacía, luego usar la base de datos
y luego usar la fuente para restaurar.
Siete, revisa la conexión a la base de datos.
gramática:
show processlist;
Puede decirnos qué usuarios están actualmente conectados a nuestro MySQL.Si descubre que un usuario no es su inicio de sesión normal, es muy probable que su base de datos haya sido invadida. Cuando encuentre que su base de datos es lenta en el futuro, puede usar este comando para verificar el estado de conexión de la base de datos
--------------------- FIN ----- ------ -----------
「 作者 」 枫叶先生
「 更新 」 2023.7.7
「 声明 」 余之才疏学浅,故所撰文疏漏难免,
或有谬误或不准确之处,敬请读者批评指正。