Instalación de MySQL versión 5.7.24 en centos7 y conocimientos de agregar, eliminar, modificar y verificar.

Instalación de MySQL 5.7.24

www.mysql.com www.oracle.com

http://dev.mysql.com/doc/refman/5.7/en/linux-installation.html

Oracle MySQL, MariaDB, servidor Percona

Seleccione Plataforma:
Binario rpm Repositorio Yum mysql57-community-release-el7-9.noarch.rpm
Binario precompilado Genérico mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz
Instalación del paquete de código fuente Código fuente mysql-5.7. 19.tar.gz
Insertar descripción de la imagen aquí

Entorno de instalación
[root@mysql1 ~]# rpm -q el paquete mariadb-server
mariadb-server no está instalado

[root@mysql1 ~]# sed -ri '/^SELINUX=/c\SELINUX=disabled' /etc/selinux/config
[root@mysql1 ~]# setenforce 0

Método 1: rpm binarias

     http://dev.mysql.com/doc/refman/5.7/en/linux-installation-yum-repo.html

        wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

        rpm -ivh  mysql57-community-release-el7-9.noarch.rpm
        yum -y install mysql-server
        mysql -uroot -p'123'
        show databases;

        [root@tianyun Downloads]# md5sum mysql57-community-release-el7-9.noarch.rpm
        [root@tianyun Downloads]# yum -y install mysql57-community-release-el7-9.noarch.rpm
        [root@git ~]# yum repolist
          Loaded plugins: fastestmirror
          Loading mirror speeds from cached hostfile
          repo id                                                                     repo name                               status
          base/7/x86_64                                                       CentOS-7 - Base                         10,019
          extras/7/x86_64                                                      CentOS-7 - Extras                          321
          mysql-connectors-community/x86_64              MySQL Connectors Community                  74
          mysql-tools-community/x86_64                           MySQL Tools Community                       74
          mysql57-community/x86_64                             MySQL 5.7 Community Server                 307
          updates/7/x86_64                                                  CentOS-7 - Updates                         628
          repolist: 11,423

        [root@git ~]# yum repolist all | grep mysql
        mysql-connectors-community/x86_64 MySQL Connectors Community     enabled:     74
        mysql-connectors-community-source MySQL Connectors Community - S disabled
        mysql-tools-community/x86_64      MySQL Tools Community               enabled:             74
        mysql-tools-community-source      MySQL Tools Community - Source disabled
        mysql-tools-preview/x86_64        MySQL Tools Preview                    disabled
        mysql-tools-preview-source           MySQL Tools Preview - Source   disabled
        mysql55-community/x86_64          MySQL 5.5 Community Server     disabled
        mysql55-community-source          MySQL 5.5 Community Server - S disabled
        mysql56-community/x86_64          MySQL 5.6 Community Server     disabled
        mysql56-community-source          MySQL 5.6 Community Server - S disabled
        mysql57-community/x86_64          MySQL 5.7 Community Server     enabled:          307
        mysql57-community-source          MySQL 5.7 Community Server - S disabled
        mysql80-community/x86_64          MySQL 8.0 Community Server     disabled
        mysql80-community-source          MySQL 8.0 Community Server - S disabled

       [root@git ~]# yum-config-manager --enable mysql56-community
       将此56的MySQL设置成开机自启动
       报错解决方式:
                   -bash: yum-config-manager: command not found
                   这个是因为系统默认没有安装这个命令,这个命令在yum-utils 包里。
                    yum -y install yum-utils
       
       [root@git ~]# yum repolist enabled | grep mysql
                mysql-connectors-community/x86_64       MySQL Connectors Community            74
                mysql-tools-community/x86_64            MySQL Tools Community                 74
                mysql56-community/x86_64                MySQL 5.6 Community Server           429
                mysql57-community/x86_64                MySQL 5.7 Community Server           307

        [root@mysql1 ~]# yum -y install mysql-community-server
        [root@mysql1 ~]# systemctl start mysqld                                 //第一次启动先初始数据库
        [root@mysql1 ~]# systemctl enable mysqld
        [root@mysql1 ~]# ls /var/lib/mysql
            auto.cnf            client-key.pem      ib_logfile1         mysql.sock.lock                  server-cert.pem
            ca-key.pem       ib_buffer_pool       ibtmp1             performance_schema          server-key.pem
            ca.pem             ibdata1                  mysql               private_key.pem                 sys
            client-cert.pem  ib_logfile0            mysql.sock          public_key.pem

 
        [root@mysql ~]# grep "password" /var/log/mysqld.log 
                2019-01-15T06:45:28.734665Z 1 [Note] A temporary password is generated for root@localhost: VFISQo_dt7Rt
                2019-01-15T06:47:41.765992Z 3 [Note] Access denied for user 'root'@'localhost' (using password: YES)
        [root@mysql ~]# mysql -uroot -p'VFISQo_dt7Rt'
                mysql: [Warning] Using a password on the command line interface can be insecure.
                Welcome to the MySQL monitor.  Commands end with ; or \g.
                Your MySQL connection id is 5
                Server version: 5.7.24 MySQL Community Server (GPL)

                Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

                Oracle is a registered trademark of Oracle Corporation and/or its
                affiliates. Other names may be trademarks of their respective
                owners.

                Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

                mysql> 
              
                 mysql>   alter  user  'root'@'localhost' identified by "1qaz2WSX#";      修改密码
                 Query OK, 1 row affected (0.00 sec)
                 mysql> \q
                 Bye
                 
                 
                 
                 mysql> show databases;
                            +--------------------+
                            | Database           |
                            +--------------------+
                            | information_schema |
                            | mysql              |
                            | performance_schema |
                            | sys                |
                            +--------------------+
                            4 rows in set (0.01 sec)

                            mysql>

Método 2: compilación e instalación del código fuente

Insertar descripción de la imagen aquí

URL: https://dev.mysql.com/downloads/mysql/5.7.html#downloads ------->community---->Mysql Community Server ----->MySQL Community Server 5.7
mysql 5.7 Paquete tar .24: https://dev.mysql.com/downloads/file/?id=481075
Paquete total https://dev.mysql.com/downloads/file/?id=481150
Insertar descripción de la imagen aquí

1. 编译安装
[root@mysql1 ~]# yum -y install ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make

cmake:
[root@mysql1 ~]# yum -y install cmake     跨平台安装工具

boost:
[root@mysql1 ~]# wget http://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz    c++库

wget http://downloads.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz

mysql:
[root@mysql1 ~]# groupadd mysql
[root@mysql1 ~]# useradd -r -g mysql -s /bin/false mysql
[root@mysql1 ~]# tar xvf mysql-5.7.19.tar.gz
[root@mysql1 ~]# cd mysql-5.7.19
[root@mysql1 mysql-5.7.19]# pwd
/root/mysql-5.7.19
解压boost文件
[root@mysql3 ~]# tar xf /root/boost_1_59_0.tar.gz
[[email protected] ~]# cmake . \
-DWITH_BOOST=boost_1_59_0/ \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DSYSCONFDIR=/etc \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DINSTALL_MANDIR=/usr/share/man \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1

下面这个是一定会遇到的,只需加上下面的命令就可以了
提示:boost也可以使用如下指令自动下载
-DDOWNLOAD_BOOST=1

[root@mysql1 ~]# make
[root@mysql1 ~]# make install

2. 初始化
[root@mysql1 local]# cd mysql
[root@mysql1 mysql]# mkdir mysql-files
[root@mysql1 mysql]# chown -R mysql.mysql .
[root@mysql1 mysql]# bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
[root@mysql1 mysql]# bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data

建立MySQL配置文件my.cnf
[root@mysql1 mysql]# vim /etc/my.cnf
[mysqld]sys
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data

启动MySQL

 ***centos6***
 
使用centos6 mysql.server脚本(system V)
[root@mysql1 mysql]# cp support-files/mysql.server /etc/init.d/mysqld
[root@mysql1 mysql]# chkconfig --add mysqld
[root@mysql1 mysql]# chkconfig mysqld on
[root@mysql1 mysql]# service mysqld start
[root@mysql1 mysql]# service mysqld start
Starting MySQL.Logging to '/usr/local/mysql/data/mysql2.err'.
 SUCCESS! 
[root@mysql1 mysql]# ps aux |grep mysqld
mysql    76 pts/0  Sl   14:38   0:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=mysql2.err --pid-file=/usr/local/mysql/data/mysql2.pid

报错1:
启动的时候会遇到default-character-set=utf8mb4报错,将下面这个写入到/etc/my.cnf
default-character-set=utf8mb4

报错2:
root@MyServer:~# service mysql start
Starting MySQL
..The server quit without updating PID file (/usr/local/mysql/data/MyServer.pid). ... failed!
错误解决排查思路:
1.可能是/usr/local/mysql/data/rekfan.pid文件没有写的权限
2.可能进程里已经存在mysql进程
3.实在不行就重新初始化


登陆数据库:
[root@MySQL ~]#  /usr/local/mysql/bin/mysql -uroot -p'zijz,Bsqe2<A'
        mysql: [Warning] Using a password on the command line interface can be insecure.
        Welcome to the MySQL monitor.  Commands end with ; or \g.
        Your MySQL connection id is 6
        Server version: 5.7.24

        Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

        Oracle is a registered trademark of Oracle Corporation and/or its
        affiliates. Other names may be trademarks of their respective
        owners.

        Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

        mysql> show databases;
        ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
        mysql> alter user 'root'@'localhost' identified by '123' ;
        Query OK, 0 rows affected (0.00 sec)

        mysql> \q
        Bye

RUTA[可选]
[root@mysql2 mysql]# mysql
-bash: mysql: comando no encontrado
[root@mysql2 mysql]# /usr/local/mysql/bin/mysql
[root@mysql1 mysql]# echo “exportar RUTA= $PATH:/usr/local/mysql/bin” >> /etc/profile
[root@mysql1 mysql]# fuente /etc/profile
[root@mysql1 mysql]# mysqladmin -uroot -p'>>e4KKcol6i1' contraseña '( TianYunYang123)'

Podemos encontrarnos con este problema al instalar mysql: Cuando
Insertar descripción de la imagen aquí
encontramos esto, significa que ya hemos inicializado la base de datos y necesitamos reinicializarla.

Si se requiere reinicialización...[opcional]
[root@mysql1 ~]# killall mysqld
[root@mysql1 ~]# rm -rf /usr/local/mysql/data
[root@mysql1 mysql]# bin/mysqld --initialize - -user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
[root@mysql1 mysql]# bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data

RPM o Yum:
datadir: /var/lib/mysql
paquete fuente y precompilación:
basedir: datadir:
/usr/local/mysql /usr/local/mysql/data

Error de compilación

El siguiente error ocurre cuando cmake compila mysql:

Insertar descripción de la imagen aquí
Solución:

Instale ncurses-devel: yum -y install ncurses-devel (Debian/Ubuntu necesita instalar libncurses5-dev).
Elimine CMakeCache.txt (el archivo está en el directorio de descompresión de mysql)
y vuelva a compilar.
Texto original: https://blog. csdn.net /zsl10/article/details/51824091

Olvidé la contraseña de MySQL

MySQL 5.7.5 y anteriores:


            [root@mysql1 ~]# vim /etc/my.cnf					 
            [mysqld]
            skip-grant-tables                           跳过密码验证

            [root@mysql1 ~]# service mysqld restart
            [root@mysql1 ~]# mysql
            mysql> update mysql.user set password=password("123") where user="root" and host="localhost";   
            mysql> flush privileges;
            mysql> \q

            [root@mysql1 ~]# vim /etc/my.cnf						 
            [mysqld]
            #skip-grant-table
            [root@mysql1 ~]# service mysqld restart

MySQL 5.7.6 y posterior:


           [root@slave1 ~]# vim /etc/my.cnf
            [mysqld]
            skip-grant-tables
            [root@slave1 ~]# systemctl restart mysqld

'
Comience a ingresar a la base de datos para realizar operaciones relacionadas.
Después de agregar una nueva contraseña, salga de la base de datos
Insertar descripción de la imagen aquí
[root@slave1 ~]# vim /etc/my.cnf
elimine la línea agregada
[root@slave1 ~]# systemctl restart mysqld

Modificar la contraseña de root de MySQL

update mysql.user set authentication_string=password('123') where user='root';     键值(跳过密码验证后,重置数据库密码,建议大小写数字符号),有可能不成功是密码规则不符
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
错误1819 (HY000):您的密码不满足当前的策略要求

alter user user() identified by "1qaz2WSX#";                        修改数据库密码(符合密码规则)

flush privileges;           重新加载特权



修改完 密码后记得进入/etc/my.cnf 下去添加注释# 然后重启服务后,重新进入数据库。

mysqladmin -u root -p')vl*hfrZg3-t' password 'Qianfeng123!'   通过mysqladmin修改数据库密码

Alta, eliminación, modificación y consulta de bases de datos:

Sintaxis: CREAR BASE DE DATOS nombre de la base de datos;

Reglas de nomenclatura de bases de datos:
distingue entre mayúsculas
y minúsculas, es único,
no se pueden usar palabras clave como crear y seleccionar,
no se pueden usar números solos

Utilice la base de datos e inserte datos:

mysql> crear tabla test1( test1 是数据库里的表
-> tinyint_test tinyint, tinyint数据类型
-> int_test int
->);
mysql> desc prueba1;
±------------±-----------±-----±----±--------±--- ---+
| Campo | Tipo | Nulo | Clave | Predeterminado | Adicional |
±------------±-----------±-----±----±--------±--- ---+
| prueba_tinyint | pequeñoint(4) | SÍ | | NULO | |
| prueba_int | int(11) | SÍ | | NULO | |
±------------±-----------±-----±----±--------±--- ---+
2 filas en el conjunto (0,01 segundos)
mysql> insertar en los valores de prueba1 (111,111); 输入数值
Consulta OK, 1 fila afectada (0,09 segundos)
mysql> insertar en test1(tinyint_test) valores(128);
ERROR 1264 (22003): el valor fuera de rango para la columna 'tinyint_test' en la fila 1 excede este tipo de valor
mysql> insertar en test1(int_test) valores (2147483647);
consulta correcta, 1 fila afectada (0,05 segundos)

删除表和库:
Tabla:

Crear tabla crear tabla
Ver estructura de tabla desc tabla, mostrar crear tabla
Restricciones de integridad de la tabla
Modificar tabla alterar tabla
Copiar tabla crear tabla...
Eliminar tabla soltar tabla

Biblioteca

Ver base de datos: MOSTRAR BASES DE DATOS;
Seleccionar base de datos:
SELECCIONAR base de datos();
USAR nombre de base de datos
usar zhaohan
Eliminar base de datos: DROP DATABASE nombre de base de datos;
mysql> soltar base de datos zhaohan;

查询:

Consulta simple
SELECCIONAR * DEL empleado5;
SELECCIONAR nombre, salario, dep_id DEL empleado5;

Evite la duplicación de DISTINCT
SELECT publicación DEL empleado5;
SELECCIONE DISTINCT publicación DEL empleado5; Deduplicación Nota
: DISTINCT no se puede usar parcialmente y generalmente solo se usa para un campo determinado.

Consulta a través de cuatro operaciones aritméticas
SELECCIONAR nombre, salario, salario 14 DE empleado5;
SELECCIONAR nombre, salario, salario
14 AS Salario_anual DE empleado5;
SELECCIONAR nombre, salario, salario*14 Salario_anual DE empleado5;

Definir el formato de visualización La
función CONCAT() se utiliza para conectar la cadena
SELECT CONCAT(nombre, 'salario anual: ', salario*14) AS Salario_anual FROM empleado5;

二、单条件查询

Consulta de condición única
SELECCIONAR nombre, publicación
DESDE empleado5
DONDE publicación = 'hora';

seleccione nombre, publicación del empleado5 donde publicación = 'hora';

Consulta de múltiples condiciones
SELECCIONE nombre, salario
DE empleado5
DONDE publicación = 'hora' Y salario> 10000;

seleccione nombre, puesto de salario del empleado5 donde puesto = 'hora' y salario > 1000;

关键字ENTRE Y
SELECCIONE nombre,salario DEL empleado5
DONDE salario ENTRE 5000 Y 15000;

SELECCIONE nombre, salario DEL empleado5
DONDE el salario NO ESTÁ ENTRE 5000 Y 15000;

seleccione nombre, salario del empleado5 donde el salario no esté entre 5000 y 15000;

关键字IS NULL
SELECT nombre, descripción_trabajo FROM empleado5
DONDE descripción_trabajo ES NULL;

SELECCIONE nombre, descripción_trabajo DEL empleado5
DONDE descripción_trabajo NO ES NULO;

SELECCIONE nombre, descripción_trabajo DEL empleado5
DONDE descripción_trabajo=" ";

Palabra clave EN consulta establecida
SELECCIONE nombre, salario DESDE empleado5
DONDE salario=4000 O salario=5000 O salario=6000 O salario=9000;

SELECCIONE nombre, salario DEL empleado5
DONDE salario EN (4000,5000,6000,9000);

SELECCIONE nombre, salario DEL empleado
DONDE el salario NO ESTÁ EN (4000,5000,6000,9000);

Palabra clave LIKE consulta difusa
Carácter comodín '%'
SELECT * FROM empleado5
WHERE nombre LIKE 'al%';
Carácter comodín ' '
SELECT * FROM empleado5
WHERE nombre LIKE 'al
__';

3. Clasificación de consultas Ordenar
por una sola columna
SELECCIONAR * DE empleado5 ORDENAR POR salario;
SELECCIONAR nombre, salario empleado DE5 ORDENAR POR salario ASC; Ordenar una vez de menor a mayor
SELECCIONAR nombre, salario DE empleado5 ORDENAR POR salario DESC; Ordenar una vez de mayor a bajo

Ordenar por varias columnas
SELECCIONAR * DEL empleado5
ORDENAR POR fecha_contratación DESC,
salario ASC;

Almacenamiento del motor de almacenamiento de uso común MySQL

Para decirlo sin rodeos, el motor es la implementación de tecnologías como cómo almacenar datos, cómo indexar los datos almacenados y cómo actualizar y consultar datos. Debido a que los datos se almacenan en forma de tabla en una base de datos relacional, el motor de almacenamiento también se puede llamar tipo de tabla (es decir, el tipo de almacenamiento y operación de esta tabla). Solo hay un motor de almacenamiento en bases de datos como Oracle y SQL Server, y
todos El mecanismo de gestión del almacenamiento de datos es el mismo. La base de datos MySql proporciona una variedad de motores de almacenamiento.
Los usuarios pueden elegir diferentes motores de almacenamiento para tablas de datos según sus diferentes necesidades, y los usuarios también pueden escribir sus propios motores de almacenamiento según sus propias necesidades.

Motor de almacenamiento MyISAM

Dado que este motor de almacenamiento no admite transacciones ni claves externas, las velocidades de acceso son más rápidas. Por lo tanto, este motor de almacenamiento es adecuado para aplicaciones que no requieren integridad de transacciones y se basan principalmente en acceso.

Motor de almacenamiento InnoDB

Dado que este motor de almacenamiento tiene ventajas en las transacciones, es decir, admite funciones de transacción como capacidades de confirmación, reversión y recuperación de fallos, ocupa más espacio en disco que el motor de almacenamiento MyISAM.
Por lo tanto, cuando se requieren operaciones frecuentes de actualización y eliminación, se requieren altos requisitos de integridad de las transacciones y se debe implementar control de concurrencia, se recomienda elegirlo. Se pueden realizar copias de seguridad de tablas y bibliotecas.

MEMORIA

El motor de almacenamiento MEMORIA almacena datos en la memoria, por lo que la velocidad de acceso es la más rápida, pero la seguridad no está garantizada. Adecuado para tablas temporales o tablas temporales que requieren un acceso rápido. No se puede realizar una copia de seguridad y no se utiliza en la empresa.

AGUJERO NEGRO

El motor de almacenamiento del agujero negro se puede aplicar a la biblioteca maestra de distribución en la replicación primaria y secundaria.

精讲:

1.InnoDB
A partir de la versión 5.5 de mysql, innodb es el motor de almacenamiento predeterminado de mysql. InnoDB tiene las siguientes ventajas
: • Buena recuperación ante desastres
• Soporta transacciones El nivel de aislamiento de transacciones predeterminado es lectura repetible y su control de transacciones se logra a través del control de concurrencia de múltiples versiones.
• Utilice bloqueos a nivel de fila
• Para las tablas en el motor InnoDB, la forma de organización física de los datos es una tabla de clúster (tabla de clúster) y los datos están organizados por la clave primaria, es decir, el índice de clave primaria y los datos están juntos y los datos están en el orden de la clave primaria distribución física. Otra forma común de tabla de datos es una tabla no agrupada, donde los índices están ordenados y los datos no están ordenados.
• Se implementó la gestión de búfer, que no sólo almacena índices sino también datos y crea automáticamente índices hash para acelerar la adquisición de datos. Por el contrario, MyISAM sólo almacena en caché el índice.
• Soporta claves foráneas.
• Admite copia de seguridad en caliente

2.MyISAM引擎
• Puede usarse con cerraduras para realizar copias, copias de seguridad y migraciones bajo el sistema operativo.
• Utilice bloqueos a nivel de tabla, mala simultaneidad.
• Admite búsqueda de texto completo (MySQL InonoDB también admite búsqueda de texto completo después de 5.6).
• Después de que el host deja de funcionar, la tabla MyISAM se daña fácilmente y la recuperación ante desastres es deficiente.
• No hay soporte para transacciones.
• Sólo se almacenan en caché los índices, el almacenamiento en caché de datos se implementa mediante búferes del sistema operativo. Puede causar demasiadas llamadas al sistema y ser ineficiente.
• Los datos se almacenan de forma compacta, lo que da como resultado índices más pequeños y un rendimiento de escaneo completo de la tabla más rápido.

3.MEMORY引擎
• El motor de almacenamiento MEMORY proporciona tablas "en memoria" y no admite transacciones ni claves externas.
• El uso de tablas de memoria (motores de memoria) puede aumentar significativamente la velocidad de acceso a los datos y puede usarse para almacenar en caché los datos a los que se accede con frecuencia, resultados de cálculos, valores estadísticos y resultados intermedios que se pueden reconstruir. Sin embargo, también tiene las siguientes desventajas.
• Se utilizan bloqueos a nivel de tabla. Aunque el acceso a la memoria es rápido, los bloqueos a nivel de tabla pueden convertirse en un cuello de botella si se producen lecturas y escrituras frecuentes.
• Sólo se admiten filas de tamaño fijo. Los campos de tipo VARCHAR se almacenarán como tipos CHAR de longitud fija, lo que desperdicia espacio.
• Los campos TEXTO y BLOB no son compatibles. Cuando algunas consultas requieren el uso de tablas temporales (que también usan el motor de almacenamiento MEMORIA), si hay campos TEXTO y BLOB en la tabla, se convertirán en tablas MyISAM basadas en disco, lo que reducirá seriamente el rendimiento.
• Debido al alto costo de los recursos de memoria, generalmente no se recomienda configurar una tabla de memoria demasiado grande. Si la tabla de memoria está llena, se encontrarán errores como "Thetable'table_name'is full" en el registro de errores de MySQL. Puede borrar los datos o ajustar los parámetros de la tabla de memoria para evitar errores.
• Los datos se perderán cuando se reinicie el servidor.

4.ARCHIVE引擎
• El motor de almacenamiento ARCHIVE es un motor de almacenamiento diseñado para almacenar grandes cantidades de datos en ejecución en empresas. El motor ARCHIVE utiliza la compresión de datos sin pérdidas zlib para que los datos se almacenen en tablas de archivo comprimidas. Cuando se insertan datos, se comprimen.
• Sólo admite INSERT y SELECT, admite claves de incremento automático e índices en ellos, y no admite otros índices. Es adecuado para el registro y el análisis del comportamiento del usuario, y no requiere ACTUALIZAR, ELIMINAR ni datos indexados.

Autorización:

远程连接MySQL
Ejemplo:
mysql -h192.168.5.240 -P 3306 -u root -p123 mysql -e 'select user,host from user'
-h especifica el nombre del host [el valor predeterminado es localhost]
-P Puerto del servidor MySQL [el valor predeterminado es 3306]
-u especifica el nombre de usuario [raíz predeterminada]
-p especifica la contraseña de inicio de sesión [la contraseña predeterminada es vacía]
aquí mysql es la base de datos de inicio de sesión especificada
-e se conecta a la declaración SQL

formato de sintaxis de concesión:

otorgar lista de permisos en el nombre de la biblioteca.nombre de la tabla a 'nombre de usuario'@'host del cliente' [identificado por 'contraseña' con parámetro de opción];

== Lista de permisos todos todos los permisos (excluidos los permisos de autorización)
seleccionar, actualizar

==Base de datos.Nombre de la tabla.Todas las tablas en todas las bibliotecasNivel global
web.* Todas las tablas en la biblioteca webNivel de base de datos
web.stu_info tabla stu_info en la biblioteca webNivel de tabla
SELECT (col1), INSERT (col1,col2) ON mydb .mytbl Nivel de columna

==Host del cliente% Todos los hosts
192.168.2.% Todos los hosts en el segmento de red 192.168.2.0
192.168.2.168 Host especificado
localhost Host especificado

==with_option parámetro
GRANT OPTION: Opción de autorización
MAX_QUERIES_PER_HOUR: Define el número de consultas que se permiten ejecutar por hora
MAX_UPDATES_PER_HOUR: Define el número de actualizaciones que se permiten ejecutar por hora MAX_CONNECTIONS_PER_HOUR: Define el
número de conexiones que se pueden establecer por hora MAX_USER_CONNECTIONS
: Definir el número de conexiones que un solo usuario puede establecer al mismo tiempo

Ver permisos autorizados
MOSTRAR SUBVENCIONES\G
MOSTRAR SUBVENCIONES PARA admin1@'%'\G

REVOCAR
la sintaxis para reciclar permisos:
REVOCAR la lista de permisos EN el nombre de la base de datos DESDE el nombre de usuario@'host del cliente'

Ejemplo:
REVOCAR ELIMINACIÓN EN . FROM admin1@'%'; //Recicla algunos permisos
REVOCA TODOS LOS PRIVILEGIOS EN . FROM admin2@'%'; //Recicla todos los permisos
REVOCA TODOS LOS PRIVILEGIOS, CONCEDER OPCIÓN EN . FROM 'admin2'@'% ';

Supongo que te gusta

Origin blog.csdn.net/weixin_42602433/article/details/86505424
Recomendado
Clasificación