Ошибка 1044 : пользователю «@’ localhost’ отказано в доступе к базе данных

#mysql #database #phpmyadmin

#mysql-ошибка-1044

Вопрос:

Я начал изучать PHP с последних нескольких дней, и вот тут я застрял.

Когда я пытаюсь ввести CREATE DATABASE blog; в оболочке, я получаю эту ошибку

«Ошибка 1044 <42000>: пользователю «@’ localhost’ отказано в доступе к базе данных»

Как мне это исправить?

Я нашел названия этой ошибки, но мне было сложно понять этот ответ.

Комментарии:

1. Пожалуйста, предоставьте обновление с более подробным описанием того, что вы делаете. С каким пользователем вы вошли в систему? В какой момент вы пытаетесь создать базу данных?

2. Я смотрю учебник и точно слежу за тем, что он делал. Сначала я открыл оболочку, затем ввел «mysql» и enter. После этого я попытался проверить базы данных, поэтому я сделал «ПОКАЗАТЬ БАЗЫ ДАННЫХ», и он показал, но там было 8 баз данных, но в оболочке отображается только 2. Он даже не показал тот, который я сделал вручную в phpmyadmin. Затем я попытался создать новую базу данных с помощью команды «СОЗДАТЬ блог БАЗЫ ДАННЫХ». Извините, если я сбиваю вас с толку своим плохим английским

3. Учебное пособие онлайн? Похоже, вы вошли в систему с неправильным пользователем…

4. вау. Большое вам спасибо за подсказку, после прочтения вашего комментария вместо простого ввода «mysql» я попытался ввести «mysql -u root -p», и это решило мою проблему. Большое тебе спасибо, братан: D

Ответ №1:

Ввод mysql без специального пользователя не работает. Или лучше сказать: вы входите в базу данных, но пользователь, которого вы используете, почти не имеет прав / привилегий. Итак, вначале вам нужно войти в систему с помощью своей учетной записи root mysql -u root -p . Затем вы можете создавать свои базы данных и работать с ними.

Совет 1: Никогда не работайте с пользователем root в продуктивной системе, а создайте пользователя, который имеет доступ только к одной базе данных.
Подсказка 2: Измените пароль пользователя root как можно скорее UPDATE user SET Password=PASSWORD('mein_pwd') WHERE user='root'; , когда вы находитесь в базе данных.

Комментарии:

1. Спасибо, брат. Подсказка 2 такая же, как «УСТАНОВИТЬ ПАРОЛЬ ДЛЯ root@localhost = pass(‘password’);» ?

2. Я думаю, да, но мой намек больше в синтаксисе MySQL