2012-06-05 2 views
106

Я не могу определить свой пароль root MySQL; как я могу это узнать? Есть ли файл, в котором хранится этот пароль?Как узнать пароль администратора MySQL

Я следую за этим link, но у меня нет каталога directadmin на местном.

+8

пароль по умолчанию root - дождаться его - «root» (без кавычек) или вообще не пароль (и этот сервер mysql ** действительно ** ваш) –

+0

да это мой локальный сервер mysql на моем ноутбуке – 2619

+0

так кто-то просто прошел этот вопрос и сбросил нисходящий поток на каждый правильный ответ и соответствующий ответ? – lanzz

ответ

14

Вы не можете найти его. Он хранится в базе данных, для которой вам нужен пароль root для доступа, и даже если вы каким-то образом получили доступ, он хэшируется односторонним хэшем. Вы можете сбросить его: http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html

+3

@lanzz, очевидно, он не собирается вам сообщать – pattyd

2

Процедура изменяется в зависимости от версии MySql. Следуйте процедуру, точно так, как описано для вашей версии:

  • намеки - прочесть перед инструкцией для вашей версии MySql *

  • На шаге 5: Вместо того, чтобы запустить CMD, создать ярлык на рабочем столе вызов CDM.exe. Затем щелкните правой кнопкой мыши ярлык и выберите «Выполнить как администратор».

  • На этапе 6: Пропустите первый предложенный вариант команды и выполнить второй, один с параметром --defaults-файла

  • После выполнения команды, если все в порядке, то Окно CMD остается открытым, и команда этапа 6 продолжает выполнение. Просто закройте окно (нажмите «x»), а затем принудительно закройте MySQl из диспетчера задач.

  • Удалите файл с помощью команд SQL и запустите MySQL. Пароль должен быть изменен.

5,0 http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html

5,1 http://dev.mysql.com/doc/refman/5.1/en/resetting-permissions.html

... просто изменить версию в ссылке (5.5, 5.6, 5.7)

55

Вы не можете просмотреть хэш пароля ; единственное, что вы можете сделать, это сбросить его!

Stop MySQL:

sudo service mysql stop 

или

$ sudo /usr/local/mysql/support-files/mysql.server stop 

Запустите его в безопасном режиме:

$ sudo mysqld_safe --skip-grant-tables 

(выше линии является целая команда)

Это будет постоянная команда unti l процесс завершен, так что откройте другое окно оболочки/терминала, войдите в систему без пароля:

$ mysql -u root 

mysql> UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root'; 

MySQL 5.7 лет и старше:

mysql> use mysql; 
mysql> update user set authentication_string=password('password') where user='root'; 

Начало MySQL:

sudo mysql start 

или

sudo /usr/local/mysql/support-files/mysql.server start 

Ваш новый пароль 'пароль'.

+0

sudo /usr/local/mysql/support-files/mysql.server stop sudo:/usr/local/mysql/support -files/mysql.server: команда не найдена – Isuru

+0

Что делать в этом случае? – Isuru

+0

Похоже, что mysql установлен неправильно. Удалите его правильно и переустановите. – tkr

4

по умолчанию пароль, который работал для меня после непосредственной установки сервера MySQL является: «MySQL» (без кавычек)

+1

, возможно, он не ответил на вопрос, но многие люди, приходящие сюда, могут найти решение этой проблемы. –

94

благодаря @thusharaK я мог сбросить пароль суперпользователя, не зная старого пароля.

На убунту я сделал следующее:

sudo service mysql stop 
sudo mysqld_safe --skip-grant-tables --skip-syslog --skip-networking 

затем запустить MySQL в новом терминале

mysql -u root 

и выполнить следующий запрос, после изменения пароля

UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root'; 
FLUSH PRIVILEGES; 

бросить курить безопасный режим mysql и запуск службы mysql на

+17

Мне пришлось использовать 'mysqladmin -u root -p shutdown' , с новым паролем. –

+2

Хороший поток команд особенно: затем запустите mysql в новом терминале –

+2

Я не могу сделать это 'mysql -u root'. Он показывает ошибку 'Access denied' –

7

Если менеджер пакетов не просит ввести пароль root во время установки, то по умолчанию корневой пароль является пустой строкой. Для подключения к свежеустановленному серверу, тип:

shell> mysql -u root --password= 
mysql> 

Чтобы изменить пароль, получить обратно оболочки UNIX и тип:

shell> mysqladmin -u root --password= password root 

Нового пароль «корень». Теперь подключитесь к серверу:

shell> mysql -u root --password= 
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) 

К сожалению, пароль не изменился. Использовать новый, root:

shell> mysql -u root --password=root 
... 
blah, blah, blah : mysql welcome banner 
... 
mysql> 

Bingo! New сделать что-то интересное

mysql> show databases; 
+--------------------+ 
| Database   | 
+--------------------+ 
| information_schema | 
| mysql    | 
| performance_schema | 
+--------------------+ 
3 rows in set (0.00 sec) 

Maurycy

4

В дополнение к другим ответам, в установке CPanel, корневой пароль MySQL хранится в файле с именем /root/.my.cnf. (и служба cpanel сбрасывает ее обратно на изменение, поэтому другие ответы здесь не помогут)

+0

Kek работал haha ​​ –

3

В вашем «имени хоста».эээ файл в папке данных MySQL работает, попробуйте искать строку, которая начинается с:

«временный пароль генерируется для Roor @ lokalny_host»

вы можете использовать

less /mysql/data/dir/hostname.err 

затем slash, а затем строку, которую вы хотите найти

/"A temporary password" 

Затем нажмите n, чтобы перейти к следующему результату.

25

MySQL 5.7 и выше сохраняет корень в файле журнала MySQL.

Пожалуйста, попробуйте следующее:

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

Выполните следующие действия для сброса пароля в системе Windows,

  1. сервис

    Stop Mysql из диспетчера задач

  2. Создайте текстовый файл и вставьте ниже выписка

MySQL 5.7.5 и более ранних версий:

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('yournewpassword');


MySQL 5.7.6 и позже:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'yournewpassword';

  1. Сохранить как mysql-init.txt и поместить его в 'C' drive.

  2. Откройте командную строку и вставьте следующий

C:\> mysqld --init-file=C:\\mysql-init.txt

+1

Это была спасательная жизнь, БОЛЬШОЙ наконечник! –

4

вы можете просмотреть MySQL корневой пароль, а я попробовал его на MySQL 5.5, так что не знаю о других новых работ версия ну или не

nano ~/.my.cnf 
-1

Это работает для меня:

На типа терминала следующие

$ sudo mysql -u root -p

Введите пароль: // просто пресс введите

mysql>

0

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

Вам нужно корневые привилегии курса и использовать следующую команду

cat /etc/psa/.psa.shadow 

Над команды будет отображаться зашифрованным паролем, который вы можете использовать для входа в Mysql в качестве корня. Ниже вы можете найти мое часто используемое решение.

mysql -uadmin -p`cat /etc/psa/.psa.shadow` 
-2

Перейти к PhpMyAdmin> config.inc.php> $ CFG [ 'Servers'] [$ я] [ 'пароль'] = '';

+0

Нет ничего в вопросе о 'phpmyadmin'. – EJP

Смежные вопросы