1.1 instalación y de configuración básica de MySQL (centos 7.3)
Instalación URL de referencia: https://www.cnblogs.com/jorzy/p/8455519.html
1, para ver si el servicio MySQL sistema ha sido instalado: Aquí hay dos maneras
rpm -qa | grep mysql
yum list instalado | grep mysql
2, si se instala MySQL eliminar sus dependencias
yum remove -y mysql-libs.x86_64
3, descargar fuente mysql57-comunidad-release-el7-8.noarch.rpm de YUM
wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
4, la instalación mysql57-comunidad-release-el7-8.noarch.rpm
rpm -ivh mysql57-comunidad-release-el7-8.noarch.rpm
Después de la instalación, dar los dos paquetes siguientes:
mysql-community.repo
mysql-comunidad-source.repo
5, el MySQL instalación, se le solicita que, al final todo el camino a Y
yum install mysql-server
6, necesario para instalar las bibliotecas de MySQL e incluir archivos
yum -y instalar mysql-devel
7, para obtener el iniciales de MySQL contraseña
servicio de mysqld start
grep /var/log/mysqld.log "contraseña"
8, gestión de MySQL comandos utilizados comúnmente
mysqld estado systemctl
systemctl iniciar mysqld
mysqld parada systemctl
9, de arranque
systemctl permitir mysqld
systemctl daemon-recarga
10, Mysql Después de la instalación, la contraseña de usuario root por defecto está vacía, puede conectarse directamente
-p-uroot-MySQL
mysqladmin -u contraseña de usuario root "1" # root para configurar la contraseña: 1
MySQL-uroot - p1 # Después de configurar el mosto contraseña de inicio de sesión de contraseña
1.2 MySQL conjunto de caracteres por defecto y modificar el motor
1. Instalar MySQL crear tablas utilizando la clave externa falló porque el motor no lo hace por defecto
2. a MySQL inserción chino encontrado confusas, ya que el conjunto de caracteres por defecto no lo hace
mostrar variables como el 'carácter%'; # Ver MySQL conjunto de caracteres por defecto
3. La solución es modificar el archivo de configuración MySQL vim /etc/my.cnf
/etc/my.cnf Vim # se añaden contenidos por debajo de su contenido de [mysqld] defecto -Almacenamiento-Engine = INNODB default_character_set = UTF8 la character_set_server = UTF8 [el mysqld_safe] defecto -character-SET = UTF8 [cliente] defecto -character- = SET UTF8 [el mysql.server] defecto -character-SET = UTF8 [MySQL] defecto -character-SET = UTF8
4. Preguntas cara: ¿Cuál es su motor de almacenamiento de base de datos utilizada? La diferencia es?
1. comunes son MyISAM e InnoDB.
2. InnoDB : soporta claves foráneas, apoyan la transacción. El índice se procesa individualmente, sin referencia a un índice.
3. MyISAM : no soporta restricciones de claves foráneas, que no admite transacciones, cuando grandes cantidades de importación de datos, que se insertará en la indexación de datos borde lateral.
Así que con el fin de mejorar la eficiencia, debe deshabilitar el índice, el índice se abrió después de una importación completa
1.3 MySQL crean y autorización de usuarios
1. Crear un usuario
1. comando : CREATE USER 'username'@'host' IDENTIFIED BY 'password';
1, nombre de usuario: nombre de usuario que va a crear
2, host: Especifica que el usuario puede iniciar sesión en la que anfitrión, si es localmente disponibles para la máquina local del usuario, si desea que el usuario puede conectarse desde cualquier host remoto, puede utilizar comodines%
3, contraseña : contraseña de inicio de sesión del usuario, la contraseña puede estar vacío, si está vacío, entonces el usuario puede iniciar sesión en un servidor sin contraseña
2, un ejemplo
. 1, el crear el usuario ' tom ' @ ' localhost ' el identificado a través de '123 456'; # tom permitió a iniciar sesión desde localhost
2, el crear el usuario ' jack ' @ ' 1.1.1.100 ' el POR IDENTIFIED '123456'; # jack permite al host desde 1.1.1.100 Entrar
. 3, el crear el usuario ' volar ' @ ' % ' del IDENTIFICADO pOR '123456'; # permitido conectarse desde cualquier mosca de acogida
4, mysql -h 1.1.1.3 -P 3306 -u conector jack # -p123456 inicio de sesión desde MySQL 1.1.1.100
5, actualización del conjunto mysql.user authentication_string = PASSWORD ( 'Chnsys @ 2016'), donde user = 'opwf'; # cambio de contraseña
2. Autorización
1. 命令 : GRANT privilegios ON nombrebasedatos . nombredetabla A 'nombre de usuario' @ 'anfitrión'
1, privilegios: la autoridad de uso de un usuario, tales como SELECT, INSERT, UPDATE, etc., si desea conceder permisos para utilizar todas las
2, NombreBaseDatos: nombre de la base
3, nombre de tabla: nombre de la tabla, si desea conceder al usuario para todas las bases de datos y tablas * autoridad de operación respectiva disposición se representa como *. *
2. Ejemplos
1, Grant del SELECT , INSERT EN testdb . Estudiante del A 'Tom' @ '%'; # autorizado consultas tom y de inserción de permisos en testdb base de datos
2, GRANT ALL EN * . * El A ' jack ' @ ' % '; jack de autorización # para todas las bases de datos, todas las mesas de todos los permisos
3, permisos de visualización
1, se muestran las subvenciones para 'tom' @ 'localhost'; privilegios de usuario # Ver tom en el host 1.1.1.100
2, muestran subvenciones para la raíz; # Ver los privilegios de usuario root
4, privilegios REVOKE
1, revocar todos de la * * FROM 'Tom' @ '%' ;. # Tom revocar todas las bases de datos, todas las tablas, todos los permisos
# 1, crear un usuario el crear el usuario ' MUP ' @ ' % ' identificado a través de ' mup_yiducloud ' ; # 2, otorgado usuario autoridad MUP concesión para operar MUP base de datos GRANT ALL ON MUP * la A. ' Mup ' @ ' % ' ; privilegios ras ; HOST SELECT, el usuario de la mysql.user; # . 3, el usuario retire el borrar el FROM = la mysql.user el caso de que el usuario ' MUP ' y el host = "localhost"; la eliminación del desde el mysql.user el caso de que el usuario = ' MUP '; # 4,修改raíz密码 conjunto actualización mysql.user authentication_string = contraseña ( ' mysqlRootPwd ' ), donde user = ' root ' y Host = ' localhost ' ;
1,4 error común mysql
1, ERROR 1819 (HY000): La contraseña no cumple los requisitos de la política actual
# MySQL -u root -p # Entrar # MySQL> SET, Ltd. Únete a la libre validate_password_policy = 0; # fortaleza de la contraseña al nivel más bajo # MySQL> SET, Ltd. Únete a la libre validate_password_length = 4; # contraseña permite una longitud mínima de 4 # MySQL> privilegios ras; # actualiza la autorización mesa, surten efecto
2, ERROR 1044 (42000): Acceso denegado para el usuario 'root' @ 'localhost' a 'BSP' base de datos
Referencia Dirección: https://blog.csdn.net/slovyz/article/details/52182283
1. La razón dada
1. De hecho, hay que decir que el archivo básicamente my.cnf porque hay skip-name-resolve este parámetro provoca parámetro que no se pueda resolver el nombre de host de sesión o de otra manera;
2. Así Entre para cualquier usuario, no se toman el tiempo para que coincida con el root @ 'localhost', o 127.0.0.1 o :: 1 pero siguió caminando raíz @ '%';
2, la solución
# 1, comprobar para ver si el usuario root en cada modo tiene permiso subvención MySQL> SELECT Grant_priv de usuario del DONDE Host = ' 127.0.0.1 ' ; + ------------ + | Grant_priv | + - ----------- + | N | + ----------------------- + 1 Fila. en SET (0.00 seg) MySQL > SELECT Grant_priv de usuario donde el Host = ' localhost ' ; + ----------------------- + | Grant_priv | + ----------------------- + | N | + ----------------------- + . 1 Fila en el SET (0.01 seg) # 2, sin necesidad de reiniciar el servicio MySQL, sólo tendrá que añadir el parámetro -h al iniciar la sesión . (A) / usr / local / MySQL / bin / MySQL -uroot - P123456 - H localhost . (B) / usr / / MySQL / bin / MySQL -uroot locales - P123456 -h127.0.0.1 # . 3, el usuario cambia permite tener la subvención permiso permiso MySQL> Actualizar usuario SET Grant_priv = ' la Y ' donde el anfitrión = ' 127.0.0.1 ' ; MySQL > Actualizar usuario SET Grant_priv = ' la Y ' donde el anfitrión = ' localhost ' ; MySQL > los privilegios ras; # . 4, salir de inicio de sesión como root de nuevo, entonces operar
3, ERROR 1045 (28000): Acceso denegado para 'opwf' @ 'localhost' usuario (usando la contraseña: SÍ)
Referencia Dirección: https://www.cnblogs.com/bk7788/p/6388562.html
1. La razón dada
1. La idea general es que usted tiene un nombre de cuenta de usuario está en blanco, MySQL primer partido de ella, y entonces usted tiene una contraseña incorrecta del sistema, eliminar el usuario anónimo, y luego ejecutar FLUSH PRIVILEGIOS;
DELETE FROM mysql.user donde el usuario = '';
PRIVILEGIOS DE LAVADO