Показаны сообщения с ярлыком mysql. Показать все сообщения
Показаны сообщения с ярлыком mysql. Показать все сообщения

суббота, 14 апреля 2012 г.

Wtf debian-sys-maint?



Переносили базы mysql в debian из другой опрерационной системы или повредили базу с названием "mysql", или имели счастье установить ее заново? ) Поздравляю, возможно у вас теперь появилась такая вот проблема:
debatest:~# /etc/init.d/mysql restart Stopping MySQL database server: mysqld. Starting MySQL database server: mysqld. Checking for corrupt, not cleanly closed and upgrade needing tables.. /usr/bin/mysqladmin: connect to server at 'localhost' failed error: 'Access denied for user 'debian-sys-maint'@'localhost' (using password: YES)' debatest:~# /usr/bin/mysqladmin: connect to server at 'localhost' failed error: 'Access denied for user 'debian-sys-maint'@'localhost' (using password: YES)'
Как это исправить? И что это вообще за пользователь такой? Итак, открываем /etc/mysql/debian.cnf находим в нем строку password, запоминаем - это пароль пользователя debian-sys-maint, нужного для запуска хотя-бы проверки таблиц при старте сервера. Заходим в клиента mysql и выполняем два запроса:

GRANT RELOAD, SHUTDOWN, PROCESS, SHOW DATABASES, SUPER, LOCK TABLES ON *.* TO 'debian-sys-maint'@'localhost' IDENTIFIED BY '-- тут пишем его пароль --';
GRANT ALL PRIVILEGES ON *.* TO 'debian-sys-maint'@'localhost' IDENTIFIED BY '-- тут пишем его пароль --' WITH GRANT OPTION;

После этого ошибка исправляется и мы плывем дальше. )

Оригинал: http://www.liveinternet.ru/users/stasikos/post80304705/

пятница, 22 мая 2009 г.

mysql - изменить пароль

Итак, продолжаем гид по работе с свежекупленным серваком.
Первое что я заметил при запуске top, что mysqld уже запущен. Стандартный пустой пароль не подошел. Для смены пароля пришлось малец похимичить. Оригинал метода путем отшелушивания зерен от плевел можно найти здесь.

1. Останавливаем сервис
/sbin/service mysqld stop

2. Запускаем без проверки таблиц прав:
/usr/bin/mysqld_safe --skip-grant-tables &
3. Заходим без пароля под root-ом
mysql -u root
4. Меняем пароль SQL коммандой
UPDATE mysql.user SET Password=PASSWORD('новый пароль') WHERE User='root';

5. Рестартуем сервис
/sbin/service mysqld restart

Linux: генерация рандомной строки для пароля

 cat /dev/urandom | tr -dc '[:alnum:]' | fold -w ${1:-20} | head -n 1