Como logar no MySQL no CentOS 6.3 usando uma conta root do domínio e não localhost?

4

Não sei se explicarei o problema, mas instalei o MySQL no CentOS 6.3 usando uma conta root em um domínio específico (f.ex. root @ mydomain), mas quando tento fazer logon para ele eu estou sendo solicitado a senha para root @ localhost conta, que eu não tenho acesso a. Como posso logar no MySQL instalado em 'mydomain' e não em 'localhost'?

Eu tentei editar o my.cnf usando bind-address = 'domain_ip', mas isso não ajudou, ele ainda queria a senha do host local.

    
por Ziouas 29.08.2012 / 08:52

2 respostas

7

O Mysql mantém suas próprias informações de usuário e senha que são diferentes das principais contas do sistema operacional. As contas root @ localhost e [email protected] são as contas de administrador padrão para uma instalação no CentOS.

Se você instalou recentemente este servidor mysql e você não configurou uma senha, então você deve ser capaz de acessá-lo com uma senha em branco

mysql -u root -p
Enter password: (press enter)

ou

mysql -h yourhostname.tld -u root -p
Enter password: (press enter)

Se você puder fazer isso, então você deve proteger o seu sistema, definindo uma senha

/usr/bin/mysqladmin -u root password 'new-password'
/usr/bin/mysqladmin -u root -h yourhostname.tld password 'new-password'

ou execute

/usr/bin/mysql_secure_installation

Que lhe dará várias opções para proteger seu sistema. Preste atenção especial ao

Disallow root login remotely? [Y/n]

Pergunta

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

Mas você aparece em sua pergunta para permitir isso (embora você provavelmente não o faça realmente).

Se alguém configurou este sistema para você e ele definiu uma senha, você deve perguntar a ele.

Se uma senha foi definida e você não pode obtê-la, você pode redefinir a senha com o seguinte procedimento, desde que você tenha acesso root ao sistema operacional.

service mysqld stop
mysqld_safe --skip-grant-tables &
mysql --user=root mysql
update user set Password=PASSWORD('new-password') where user='root';
flush privileges;
exit;

Agora pare o mysql

pkill mysql

e reinicie o serviço

service mysql start

Você deve conseguir fazer o login com sua senha conhecida.

    
por 29.08.2012 / 10:44
1

Por padrão, o serviço mysql é instalado, mas não iniciado. A senha do root é rejeitada se o serviço não for iniciado.

Para iniciar o mysql:

  1. Abra uma janela de terminal que pode ser encontrada na barra de menus principal na parte superior da tela, em Aplicativos > Ferramentas do sistema > Terminal
  2. Quando a janela do terminal for carregada, digite su - e pressione Enter
  3. Agora você será solicitado a fornecer sua senha de root do centOS. Digite-o e pressione Enter. (você define sua senha root durante a instalação).
  4. Agora digite service mysqld start seguido por retornar

Agora tente fazer o que você estava fazendo antes - isto é,

mysql -uroot -p  

desta vez, o 'root' que está falando é a sua senha de root MYSQL (diferente da senha de root que você usou na etapa 3 e BLANK por padrão se você ainda não mudou)

    
por 31.12.2012 / 02:22

Tags