Войти

Показать полную графическую версию : Потеря логина и пароля на sql


ziim
11-12-2008, 23:44
Добрый вечер. Значит ситуация такая есть dump базы на которую нет ни логина ни пароля .Как ее можно залить на новую машину и создать нового юзера (или как можно высосать даные про старого пользователя).

P.S.Нет логина и пароля по причине смены админа (старый вне контакта).

Буду очень благодарен за помощь

exo
12-12-2008, 02:08
если у вас MySQL, то можно сбросить пароль на пользователя MySQL.
описание по этой ссылке (http://admin.exonix.ru/unix/mysql.html).
конкретно:
Также можно столкнутся со следующей проблемой:
# mysql -u root -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
# /usr/local/bin/mysqladmin -u root password '1q2w3e'
/usr/local/bin/mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: YES)'

Решается следующим образом:
запускаем с ключем --skip-grant-tables (ключ в command_args= в mysql-server.sh и делаем mysql-server.sh restart)
Заходим без пароля делаем SET PASSWORD FOR root@'localhost' = PASSWORD('new_one')
Затем убераем skip-grant-tables и перезапускаем снова

mysql_user="mysql"
mysql_limits_args="-e -U ${mysql_user}"
pidfile="${mysql_dbdir}/`/bin/hostname`.pid"
command="/usr/local/bin/mysqld_safe"
command_args="--defaults-extra-file=${mysql_dbdir}/my.cnf --skip-grant-tables --user=${mysql_user} --datadir=${mysql_dbdir} --pid-file=${pidfile} ${mysql_args} > /dev/null &"
procname="/usr/local/libexec/mysqld"
start_precmd="${name}_prestart"
mysql_install_db="/usr/local/bin/mysql_install_db"
mysql_install_db_args="--ldata=${mysql_dbdir}">br mysql_create_auth_tables()
{

WhitePangolin
12-12-2008, 08:29
есть dump базы на которую нет ни логина ни пароля »
Да и фиг с ним с логином. Сделайте новую базу раз дамп есть.

ziim
12-12-2008, 09:38
А когда я дапм залью он не зальеться со старыи логином и паролем?

Да у меня Mysql+фря фря 6.3

dmitryst
12-12-2008, 11:47
он не зальется со старыи логином и паролем? »
а это как? Для каждой таблицы привилегии пользователя устанавливаются в специальной служебной таблице mysql, так что проблем не будет - только дайте себе доступ ко всем таблицам GRANT ALL PRIVILEGES ON *.* TO 'ваш_логин'@'localhost'. Пользователь 'ваш_логин'@'localhost', разумеется, уже должен существовать.

ziim
14-12-2008, 18:03
Спасибо

Barracuda
15-12-2008, 10:14
Пользователь 'ваш_логин'@'localhost', разумеется, уже должен существовать.
В таком формате гранта - да. Если в конце гранта добавить IDENTIFIED BY 'password' то сервер создаст такого зверя сам. Не работает в версиях ниже 4.x

dmitryst
15-12-2008, 11:38
Если в конце гранта добавить »
да. Но правильнее, вроде бы, сначала юзера создать, а потом давать права на базы и таблицы (хотя, может, я неправильно перевел)




© OSzone.net 2001-2012