Сброс пароля root в MySQL, Postgresql, FreeBSD
Категория: / DEV Блог
/ Сервер (FreeBSD)
MySQL
Добавляем в начале файла /usr/local/etc/rc.d/mysql-server
строчку:
mysql_args="--init-file=/root/reset"
Далее, создаем файл /root/reset с содержимым
Рестартим mysql - /usr/local/etc/rc.d/mysql-server restart
Mysql выполнит указанный скрипт при запуске и установит новый пароль для рута.
Не забудте закомментить добавленную строку.
PostgreSQL
Логинимся рутом в систему (ssh). Далее
Для порядка рестарт демона /usr/local/etc/rc.d/postgres.sh restart
FreeBSD
Перезагружаем бокс
1. В выборе загрузчика тыкаем "Boot FreeBSD in single user mode"
2. На вопрос Enter full pathname of shell or RETURN for /bin/sh: отвечаем согласием
3. Монтируем фс mount -a
4. Стандартная команда passwd и ввод нового пароля
Для успешного логина в коробку без пароля в сингл режиме в /etc/ttys должны быть записи "on secure" для одного из терминалов.
Добавляем в начале файла /usr/local/etc/rc.d/mysql-server
строчку:
mysql_args="--init-file=/root/reset"
Далее, создаем файл /root/reset с содержимым
UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root';
GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY PASSWORD PASSWORD('password') WITH GRANT OPTION;
FLUSH PRIVILEGES;
Рестартим mysql - /usr/local/etc/rc.d/mysql-server restart
Mysql выполнит указанный скрипт при запуске и установит новый пароль для рута.
Не забудте закомментить добавленную строку.
PostgreSQL
Логинимся рутом в систему (ssh). Далее
su pgsql
psql -d template1 -U pgsql
alter user pgsql with password 'pgsql_password'; commit;
Для порядка рестарт демона /usr/local/etc/rc.d/postgres.sh restart
FreeBSD
Перезагружаем бокс
1. В выборе загрузчика тыкаем "Boot FreeBSD in single user mode"
2. На вопрос Enter full pathname of shell or RETURN for /bin/sh: отвечаем согласием
3. Монтируем фс mount -a
4. Стандартная команда passwd и ввод нового пароля
Для успешного логина в коробку без пароля в сингл режиме в /etc/ttys должны быть записи "on secure" для одного из терминалов.
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)