Tente isso. Inicie o MySQL como root, apenas pressione Ctrl + Alt + T no seu teclado para abrir o Terminal. Quando se abre, execute o (s) comando (s) abaixo:
mysql -u root -p
Acabei de abrir o mysql digitando "mysql" no terminal. Então, fui criar um banco de dados que jogou esse erro: -
mysql> create database test2;
ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'test2'
mysql>
Como faço para corrigir isso? P.S - Eu instalei o LAMP usando o tasksel. Obrigado.
Tente isso. Inicie o MySQL como root, apenas pressione Ctrl + Alt + T no seu teclado para abrir o Terminal. Quando se abre, execute o (s) comando (s) abaixo:
mysql -u root -p
Como você provavelmente sabe, o MySQL é um servidor de banco de dados . Isso significa que você precisa de um cliente para se conectar a um servidor MySQL. O programa da linha de comandos mysql
que você está usando é um desses clientes.
Como em muitos sistemas, um servidor MySQL possui suas próprias contas e privilégios de usuário. Então, se você conectar um cliente a um servidor MySQL, terá que fornecer um nome de usuário e (quase sempre) uma senha. Se você não fornecer o mysql
com um nome de usuário, ele pressupõe que você deseja usar o nome de usuário do UNIX / Linux com o qual você está conectado ao seu servidor. Por exemplo, se você estiver logado em seu servidor como 'joe', mysql
tentará usar o usuário do MySQL com o mesmo nome, que é 'joe @ localhost'. Como você pode ver, as contas de usuário do MySQL sempre contêm o nome do host do qual você está se conectando. Isso é adicionado automaticamente.
Se você quer se conectar ao seu servidor MySQL como o usuário 'joe @ localhost', você pode fazer
mysql -u joe
Com isso, o MySQL assume que o servidor MySQL está rodando na mesma máquina que o cliente (portanto, o hostname 'localhost' é automaticamente adicionado) e 'joe @ localhost' não possui um conjunto de senhas.
Se a conta de usuário do MySQL desejada tiver uma senha definida, você pode solicitar ao cliente mysql
mysql -u joe -p
E, para completar, se você quiser se conectar a um MySQL em outra máquina enquanto o cliente é executado, você pode fazer algo como
mysql -h my-mysql-server.com -u joe -p
No seu caso especial, a conta de usuário do MySQL, o cliente mysql
, conecta-se ao servidor MySQL, pois não possui os privilégios necessários para criar um novo banco de dados. Você precisa se conectar como um usuário do MySQL que possui esses privilégios. Qual conta de usuário depende de como você configura o servidor MySQL.