Descripción : La operación involucrados han logrado en MySQL
En primer lugar, el concepto básico
1, los datos de la abstracción
de la capa física, una capa lógica, vista de capa
2, y ejemplos de modo de
información de conjunto almacenado en la base de datos en un momento determinado se refiere como datos de un ejemplo .
Modo: Modo físico y el modo lógico .
3, el modelo de datos
- Modelo relacional
- Modelo entidad - relación
- Sobre la base de los objetos del modelo de datos
- modelo de datos Semi-estructurada
4, base de datos lingüística
lenguaje de manipulación de datos (Data-Lenguaje de manipulación, DML) : por ejemplo, Query Language (Lenguaje de consulta)
lenguaje de definición de datos (Data-Definition Language, DDL) :
- limitación de dominio
- restricciones de integridad referencial
- afirmación
- Autorizar
5, gestión de transacciones
- La atomicidad, atomicidad
- La consistencia, consistencia
- Aislamientos: Aislamiento
- La durabilidad, la persistencia
6, el tipo básico
- Char (n): cadena de longitud fija de longitud especificada n
- VARCHAR (n): una cadena de longitud variable, la longitud máxima n
- int : tipo entero
- smallint : entero pequeño
- numérico (P, d): punto fijo, p dígitos, d decimal
- Real , de doble precisión : coma flotante de doble precisión de punto flotante
- un flotador (n): precisión de coma flotante de al menos n bits.
Operaciones básicas
Primera base de datos mysql connect
~#: mysql -u root -p
然后输入密码
1, crear / base de datos de eliminación
comandos: Create / gota de base de datos DBName
mysql> create database Mytest;
mysql> drop database Mytest;
2, muestra el DBMS actuales cuántos base de datos de
comando: Mostrar bases de datos
mysql> show databases;
3, utilizando una base de datos especificada
comando: uso DBName
mysql> use Mytest;
[Después de 3 después de la ejecución, que se utiliza para especificar la base de datos 4], ver las tablas de una base de datos
de comandos: Mostrar las Tablas ;
mysql> show tables;
5, crear la tabla
de comandos: crear la tabla TableName (
, <
>);
restricciones de integridad comunes:
- Clave primaria( ): Clave primaria
- clave externa( ) Referencia: 外 键
- no nulo: no vacía
mysql> create table department
(dept_name varchar(20),
building varchar(15),
budget numeric(12,2),
primary key(dept_name);
mysql> create table course
(course_id varchar(7),
title varchar(50),
dept_name varchar(20),
credits numeric(2,0),
primary key(course_id),
foreign key(dept_name) references department);
mysql>
6, la inserción
de comandos: INSERT INTO la TableName (
) Valores (
)
mysql> insert into instructor(ID,name,dept_name,salary) values(10211,'Smith','Biology',66000);
7, eliminar
implica principalmente dos operaciones: eliminar una de datos o borrar la tabla, la relación de retención (delete), eliminar la tabla (eliminar).
Comando: Eliminar en el NombreTabla
Eliminar en el NombreTabla DONDE Condition
caída de la tabla del NombreTabla
8, atributos añadir, borrar.
Comando: ALTER TABLE el NombreTabla el Add
tabla alter TableName gota
. 9, los datos de actualización
del sistema:Actualización de la NombreTabla SET
DONDECondition
10, una simple consulta de
comandos:SELECT*de la NombreTabla DONDECondition
Descripción:
- seleccione cláusula de las propiedades que figuran en los resultados de la consulta requeridos
- de la cláusula se evalúa en unas necesidades de consulta de acceso a tablas relacionales
- donde cláusula es una cláusula de actuar sobre la propiedad de las relaciones subyacentes
11, las operaciones de cadenas
- Porcentaje (%): coincide con cualquier cadena
- Un guión bajo (_): coincide con cualquier carácter
Utilización de operadores SQL gusta para expresar el patrón
12, funciones de agregado
un conjunto (o varios conjuntos set) es una función de valor agregado es de entrada, la función devuelve un solo valor. SQL proporciona cinco funciones de agregación inherentes:
- El promedio: AVG .
- Mínimo: min .
- Máximo: max .
- Resumiendo: SUMA .
- Incluido: COUNT .
Puede utilizar grupo por la agrupación de paquetes de agregación se realiza puede aumentar aún más después de la que tiene la cláusula de condiciones más definidos.
Tres, hoja de referencia de MySQL
1, y el modo de configuración de base de datos de enumeración
datos | investigación |
---|---|
edición | SELECT @@ versión; |
El usuario actual | Seleccionar usuario (); SELECT SYSTEM_USER (); |
Listas de los derechos de los usuarios | Concesionario SELECT, privilege_type, IS_GRANTABLE DE information_shcema.user_privilege; |
datos | investigación |
---|---|
La base de datos actual | Seleccionar base de datos (); |
Base de datos de la lista | schema_name SELECT FROM information_schema.schemata; |
En la siguiente tabla | Lista la tabla de base de datos actual: TABLE_NAME SELECT FROM INFORMATION_SCHEMA.TABLES el DONDE TABLE_SCHEMA = Base de datos (); Lista de todas las bases definidas por el usuario y todas las tablas: SELECT TABLE_SCHEMA, el FROM nombre_tabla INFORMATION_SCHEMA.TABLES ! = TABLE_SCHEMA WHERE 'INFORMATION_SCHEMA' Y el nombre_tabla ! = 'mysql'; |
Listado de las columnas | Las listas de bases de datos actuales de los nombres de las columnas de la tabla departamento: COLUMN_NAME SELECT FROM de INFORMATION_SCHEMA.COLUMNS el DONDE nombre_tabla = 'departamento'; listas de todo por todas las columnas de la base de datos definido por el usuario: SELECT TABLE_SCHEMA, nombre_tabla, nombre_columna FROM de INFORMATION_SCHEMA.COLUMNS el DONDE TABLE_SCHEMA =! 'INFORMATION_SCHEMA' nombre_tabla Y = 'mysql '!; |
2, la función de persianas
datos | investigación |
---|---|
longitud de la cadena | LONGITUD() |
Extrae una cadena de caracteres de una cadena dada | SELECT SUBSTR (cadena, offset, longitud); |
Representación de cadena ( 'ABC') sin las comillas simples | Char SELECT (65,66,67); |
del retardo de disparo | BENCHMARK (recuento, expr); # ejecución expresión expr tiempos de conteo SLEEP (n); # n desencadenar un segundo retardo |
instrucción IF | SELECT si (condición, expr1, expr2); condición # retorno es cierto expr1, de lo contrario expr2, la función del sueño a menudo combinado |
Hay ciegos SUBSTR puede realizar el ejemplo de referencia booleana
https://blog.csdn.net/Secur17y/article/details/102497529
3, base de datos del servidor de ataque
1) ejecutar comandos del sistema
SELECT 'system_commands' INTO dumpfile trojanPath;
2) para romper la contraseña de la base de datos
SELECT concat(user,":",password) FROM mysql.user;
3, lea el archivo
SELECT LOAD_DILE('etc/passwd');
4, escritura al archivo
SELECT * FROM TableName INTO dumpfile '/tmp/hacker';
Referencia
Mysql implantación de archivo de salida, dumpfile, la función load_file detallada
Diferencia: DUMPFILE aplica a archivo binario, que se dirigirá archivo se escribe en la misma línea, y OUTFILE son más adecuadas para un archivo de texto.