Site oficial versão 5.7: https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.29-1.el7.x86_64.rpm-bundle.tar
pode ser carregado para Linux usando xftp.
Crie a instalação do mysql diretório
mkdir mysql
Para evitar problemas de permissão, dê o máximo de permissões ao diretório onde o arquivo mysql unzip está localizado
chmod -R 777 mysql
Use o comando tar para descompactar
tar -xvf mysql-5.7.29-1.el7.x86_64.rpm-bundle.tar
Antes de instalar a nova versão do mysql, você precisa desinstalar o mariadb-lib que vem com o sistema
rpm -qa|grep mariadb
rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
Instale em ordem estrita: mysql-community-common-5.7.29-1.el7.x86_64.rpm, mysql-community-libs-5.7.29-1.el7.x86_64.rpm, mysql-community-client-5.7.29 -1.el7.x86_64.rpm, mysql-community-server-5.7.29-1.el7.x86_64.rpm estes quatro pacotes
rpm -ivh mysql-community-common-5.7.29-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.29-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.29-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.29-1.el7.x86_64.rpm
Se este erro ocorrer durante o processo de instalação, adicione --force --nodeps no final, o que pode ser causado pelo yum instalando uma versão antiga das chaves GPG
rpm -ivh mysql-community-server-5.7.29-1.el7.x86_64.rpm --force --nodeps
Modificar configuração relacionada
vim /etc/my.cnf
Adicione estas três linhas
skip-grant-tables: skip login verification
character_set_server = utf8: define o conjunto de caracteres padrão UTF-8
init_connect = 'SET NAMES utf8': define o conjunto de caracteres padrão UTF-8
skip-grant-tables
character_set_server=utf8
init_connect='SET NAMES utf8'
Configurar inicialização
systemctl start mysqld.service
Inicie o mysql
mysql -uroot
Defina uma senha simples primeiro
update mysql.user set authentication_string=password('123456') where user='root';
Efetivo imediatamente
flush privileges;
Saia do mysql e pare o serviço mysql
退出命令 quit
停止mysql
systemctl stop mysqld.service
Edite o arquivo de configuração my.cnf para comentar a linha skip-grant-tables
Reinicie o serviço mysql
systemctl start mysqld.service
Faça login no mysql novamente
mysql -uroot -p123456
Habilitar acesso remoto
grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
Este erro foi relatado como resultado:
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before
Usando mysql 5.7, você precisa modificar a senha inicial a tempo, caso contrário você obterá um erro em tudo.
Se você deseja definir uma senha de teste simples, por exemplo, defina-a como 123456, este erro será solicitado. Um erro significa que sua senha não atende aos requisitos.
mysql> alter user 'root'@'localhost' identified by '123456';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
Na verdade, isso está relacionado ao valor de validate_password_policy.
A validate_password_policy tem os seguintes valores: o
padrão é 1, que é MÉDIO, portanto, a senha definida no início deve atender ao comprimento e conter números, letras minúsculas ou maiúsculas e caracteres especiais.
Às vezes, apenas para meu próprio teste, não quero definir a senha tão complicada.Por exemplo, eu só quero definir a senha de root para 123456.
Dois parâmetros globais devem ser modificados:
Primeiro, modifique o valor do parâmetro validate_password_policy
mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)
O parâmetro validate_password_length (comprimento da senha) é padronizado para 8, nós o modificamos para 1
mysql> set global validate_password_length=1;
Query OK, 0 rows affected (0.00 sec)
Após a conclusão, execute a instrução de modificação de senha novamente para ter sucesso
mysql> alter user 'root'@'localhost' identified by '123456';
Query OK, 0 rows affected (0.00 sec)
As configurações entram em vigor imediatamente
flush privileges;
Em seguida, defina a configuração de permissão de acesso remoto com sucesso
mysql> grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
Query OK, 0 rows affected, 1 warning (0.00 sec)