it-swarm.com.ru

Доступ запрещен для пользователя root в командной строке MySQL

Я только что установил xampp и использую командную строку для записи mySQL . Я использую «root» без пароля и могу подключиться к mysql, но не могу CREATE DATABASE, так как я получаю ошибку 1044 access denied for user '' @ 'localhost'. Я вошел как -uroot.

У меня есть привилегии в phpMyadmin, чтобы делать то, что я хочу, но в командной строке у меня, похоже, нет прав на запись. Я просмотрел все остальные посты на эту тему, но безрезультатно. Я не могу предоставить привилегии, так как у меня их нет в любом случае.

33
gavin

Я переустановил ODBC коннектор msi и переустановил mySQL напрямую (кроме xampp), и теперь он работает. Я думаю, что это была проблема с коннектором, так как SHOW DATABASES фактически не показывал мои базы данных вообще.

Мой «root» логин не получал доступ к БД, из-за чего казалось, что у него ограниченные привилегии, но на самом деле он не был подключен должным образом.

0
gavin

Вы входите в MySQL как пользователь root? Вы должны явно предоставить привилегии своей «обычной» учетной записи пользователя MySQL при входе в систему как root MySQL. 

Сначала настройте учетную запись root для своей базы данных MySQL.

В терминале введите:

mysqladmin -u root password 'password'

Чтобы войти в MySQL, используйте это:

mysql -u root -p

Чтобы установить привилегии, вручную запустите сервер с параметром skip-grant-tables, откройте клиент mysql и вручную обновите таблицу mysql.user и/или таблицы mysql.db. Это может быть утомительным занятием, поэтому, если вам нужен аккаунт со всеми привилегиями, я бы сделал следующее. 

Запустите сервер с параметром skip-grant-tables 

Запустите mysql клиент (без имени пользователя/пароля) 

Выполните команду

flush privileges;

который заставляет таблицы грантов быть загруженными. 

Создайте новую учетную запись с помощью команды GRANT примерно так (но замените имя пользователя и пароль тем, что вы хотите использовать. 

GRANT ALL on *.* to 'username'@'localhost' identified by 'password';

Перезагрузите сервер в обычном режиме (без skip-grant-tables) и войдите в систему, используя только что созданную учетную запись.

См. это MySQL документы.

68
Jacob

перейдите в do C:\xampp\mysql\bin\и убедитесь, что файл mysql.exe находится в этой папке.

mysql -uroot -p

если у вас нет пароля, просто нажмите Enter.

быстрое изменение на 

mysql>

делай свои команды mysql

9
Paulo Pinto

По умолчанию пароль не установлен для пользователя root в XAMPP.

Вы можете установить пароль для пользователя root MySQL. 

Перейдите к 

локальный: 80/безопасность/index.php

и установите пароль для пользователя root.

Примечание. Пожалуйста, измените номер порта, указанный выше, если ваш Apache подключен к другому порту.

Открыть панель управления XAMPP. Нажать кнопку «Оболочка».

Окно командной строки теперь откроется в этом типе окна

mysql -u root -p;

Он попросит ввести пароль, который вы установили для пользователя root.

Теперь вы вошли в систему как пользователь root: D Теперь делайте то, что вы хотите: P

5
Vishal

Файл сервера только поменять имя папки

etc/mysql
rename
mysql-
0
alpc

Получите доступ к серверу базы данных MariaDB 10

После остановки сервера базы данных следующий шаг - получить доступ к серверу через черный ход, запустив сервер базы данных и пропустив таблицы сетей и разрешений. Это можно сделать, выполнив команды ниже.

Sudo mysqld_safe --skip-grant-tables --skip-networking &

Сброс root-пароля MariaDB

Теперь, когда сервер базы данных запущен в безопасном режиме, выполните приведенные ниже команды, чтобы войти в систему как пользователь root без запроса пароля. Для этого выполните команды ниже

Sudo mysql -u root

Затем выполните команды ниже, чтобы использовать базу данных mysql.

use mysql;

Наконец, выполните команды ниже, чтобы сбросить пароль root.

update user set password=PASSWORD("new_password_here") where User='root';

Замените new_password _here новым паролем, который вы хотите создать для учетной записи root, затем нажмите Enter.

После этого выполните следующие команды, чтобы обновить разрешения и сохранить изменения на диске.

flush privileges;

Выход (CTRL + D), и все готово.

Затем запустите MariaDB как обычно и протестируйте новый пароль, который вы только что создали.

Sudo systemctl stop mariadb.service
Sudo systemctl start mariadb.service

Войдите в базу данных, выполнив следующие команды.

Sudo mysql -u root -p

источник:https://websiteforstudents.com/reset-mariadb-root-password-ubuntu-17-04-17-10/

0
rubo77