setting mysql root password no CentOS 7

3

Como posso logar no cliente de linha de comando do mysql 5.6 e redefinir a senha de root no Centos7?

Eu li o seguinte neste link , mas ele não funciona :

1) sudo service mysqld stop
2) sudo service mysqld startsos
3) mysql -u root
4) Now you will be at mysql prompt. Here type:-
4.1) UPDATE mysql.user SET Password=PASSWORD('NewPassHere') WHERE User='root';
4.2) FLUSH PRIVILEGES;
4.3) quit;
5) sudo service mysqld restart  

Passo 1) acima resulta em:

[root@localhost ~]# sudo service mysqld stop
Redirecting to /bin/systemctl stop  mysqld.service
Failed to issue method call: Unit mysqld.service not loaded.

Passo 3) acima resulta em:

-bash: syntax error near unexpected token '('

Quando altero o passo 3 para UPDATE mysql.user SET Password='NewPassHere' WHERE User='root'; , obtenho o seguinte erro:

bash: UPDATE: comando não encontrado ...

Parece que consigo entrar no mysql quando digito su - para me tornar root e depois digito mysql - u root no próximo prompt. Mas os comandos de 5 etapas acima não funcionam, mesmo quando eu removo a palavra sudo e / ou substituo a palavra service por systemctl . Como posso obter acesso de trabalho à linha de comando do mysql 5.6 no CentOS 7, começando com a configuração da senha de root?

    
por CodeMed 25.11.2014 / 18:55

4 respostas

2

Às vezes, você pode prejudicar sua configuração. Como tal, é mais fácil começar de novo, como se o pacote nunca tivesse sido instalado. No seu caso, estamos olhando para o MySQL.

  1. Nós usamos o Yum para remover o MySQL, da seguinte forma:
    yum remove mysql mysql-server
  2. Com o MySQL removido, podemos fazer o backup da configuração com segurança:
    mv /var/lib/mysql /var/lib/mysql_old_backup
    Se você preferir removê-lo, emita: rm -vR /var/lib/mysql
  3. Agora podemos reinstalar o MySQL com segurança, usando a configuração padrão incluída no pacote do repositório oficial do MySQL (precisamos de wget para obter o rpm que atualizará seus repositórios):% yum install wget
  4. Agora faça o download e instale o repositório:
    wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm && rpm -ivh mysql-community-release-el7-5.noarch.rpm
  5. Verifique se os repositórios estão instalados:
    ls -1 /etc/yum.repos.d/mysql-community*
  6. Emita o comando de instalação atual (Isso substituirá o mysql-server no repositório do CentOS pelo pacote oficial do MySQL upstream):% yum install mysql-server
  7. Use o script fornecido para definir a senha raiz, agora que temos uma nova instalação novamente: mysql_secure_installation
    Se você precisar definir a senha depois de usar o script, use:
    mysql -u root
  8. Agora você pode usar os comandos padrão de systemctl , parte de systemd para iniciar e parar o daemon da seguinte forma:
    systemctl start mysqld

Referências

  1. Como remover o MySQL completamente do sistema Linux - CentOS
  2. Como instalar o MySQL Server 5.6 no CentOS 7 / RHEL 7
por 26.11.2014 / 16:41
6

Para instalar o MySQL mais recente 5.7 no RHEL / Centos 7. Existem alguns passos a seguir -:

Etapa 1 -: Adicione o Repositório EPEL abaixo

$ sudo rpm -iUvh http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm

Etapa 2 -: Instale o MySql Server usando abaixo do yum installer.

$ sudo yum install mysql-server 

Etapa 3 -: Adicionar ao sistema de inicialização e iniciar o servidor MySQL.

$ sudo systemctl enable mysqld
$ sudo systemctl start mysqld

Etapa 4 -: Redefina a senha de root do servidor MySql.

sudo grep 'temporary password' /var/log/mysqld.log

Output Algo como -:

10.744785Z 1 [Note] A temporary password is generated for root@localhost: o!5y,oJGALQa

Use a senha acima durante a reinicialização do processo mysql_secure_installation.

$ sudo mysql_secure_installation
Securing the MySQL server deployment.

Enter password for user root: 
The 'validate_password' plugin is installed on the server.
The subsequent steps will run with the existing configuration
of the plugin.
Using existing password for root.

Estimated strength of the password: 100 
Change the password for root ? ((Press y|Y for Yes, any other key for No) : y

New password: 

Re-enter new password: 

Estimated strength of the password: 100 
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : y
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.

Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
Success.


Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Success.

By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.


Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
 - Dropping test database...
Success.

 - Removing privileges on test database...
Success.

Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
Success.

All done!

Você redefiniu com sucesso a senha de root do MySql Server.

Passo 5 -: Use o comando abaixo para checar se o servidor mysql está conectado ou não.

$ mysql -u root -p

Saída -:

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 5.7.12 MySQL Community Server (GPL)

Copyright (c) 2000, 2016, 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>

Veja meu artigo: install-latest-mysql-5-7-rhelcentos-7

    
por 15.04.2016 / 20:07
1

Se você puder entrar no MySQL ao usar o comando:

mysql -u root

Então você já tem acesso ao MySQL, você não terá uma senha configurada para o usuário "root" (muito provavelmente) ou você pode ter uma senha configurada em um arquivo de configuração para o MySQL como /etc/my.cnf .

Se você deseja redefinir sua senha de root do MySQL, então você deve ser capaz de executar:

$ mysql_secure_installation
    
por 25.11.2014 / 19:09
0

Provavelmente é porque o 'restart' não está matando o MySQL iniciado no modo sos por 'startsos' e a porta 3306 (ou onde quer que esteja rodando) está ocupada. Após o 4º passo, tente estes:

$ sudo service mysqld stop
$ ps -ef | grep mysql

Agora, a partir da saída de ps , se você não vir nenhum processo mysql em execução, inicie o MySQL usando o comando abaixo. Se você ver um processo mysql em execução, inicie o MySQL depois de matar o processo mysql.

$ sudo service mysqld start
    
por 25.11.2014 / 19:16