2012-01-20 10 views
8

質問を初めて投稿したStackoverflowの長年の読者。エラー: 'ユーザのアクセスが拒否されました' debian-sys-maint '@' localhost '(パスワード:YESを使用)'

数日前に私の開発者用ラップトップをハードウェアで再起動する必要がありました。私はそれをバックアップしたとき、私はmysqldがもうアクセスできなくなったことに気付きました。私は通常、ローカルのdevマシンでrootと接続します。私はいつものようにinitスクリプトを使って起動/停止することができなかったので、いつものように様々な検索エンジンを使いました。 Google、Bing、Duckduckgo.comに相談したところ、問題の解決策はまだ見つかりませんでした。私は同様の問題に対する解決策を見つけましたが、debian-sys-maintの自動生成されたパスワードを変更してrootとしてログインして新しいものを設定しましたが、rootとしてログインすることができないので問題は解決しません。

誰かがこのジレンマの他の解決策候補を知っていますか?

エラー:「ユーザー 'debian-sys-maint' @ 'localhost'(パスワードは:はい)にアクセスが拒否されました。

+2

エラーメッセージは、mysqlサーバは実行中ですが、ログインクレデンシャルが間違っていることを示しています。 Perhabsこの質問はhttp://serverfault.com/で尋ねられるべきですか? – Mchl

答えて

3

すべてのデータベースにアクセスするための資格情報を保持しているデータベース(「mysql」)のテーブルを破棄したような音がします。問題を示すMySQLログ(/ var/log/mysql)に何かがありますか?

破損している場合、修正しようとする方法はストレージエンジンによって異なります。 MyISAM(デフォルト)を使用していますか?その場合は、デーモンをオフにしてmyisamchkを使用して修復を試みてください。

修復できない場合は、バックアップから復元するか(バックアップしたか、正当なものか)、MySQLを再初期化する必要があります(おそらく、APTでパッケージを再インストールするのが最も簡単です)。

経験豊富なシステム管理者からの提案については、ServerFaultでもお試しください。

P.S.-システムにスーパーユーザーアクセス権がある場合は、somewhat convoluted procedureを介しても、MySQLにログインできなくてもMySQLルートパスワードをリセットできます。

+1

ありがとうございました。多くの異なるソリューションがテストされた後、私は最初に試してみたはずの最も簡単なことをやっただけです。つまり、apt-get mysql-serverを削除します。 apt-get mysql-serverをインストールします。 mysql_secure_installation – dVw

+0

私は今同じ問題があります!私のMySQLサーバは同じメッセージを表示しますが、実行していますが、停止できず、再起動もできません!! Mysqlは私のテーブルの1つを検出しません!任意のソリューションですか?私はバックアップがありません – sinoohe

+0

私が推奨するmyisamchkを使ってみましたか?それがうまくいかず、バックアップがない場合は、おそらくSOLです。バックアップを維持することの重要性を教えてください。 –

9

私はそうのようにmysqlデータベースを復元した後、私は同じエラーを得た:

mysql -h localhost -u root -p < mysql.backup.sql 

mysqlの。 backup.sqlファイルは別のサーバーからのものです。

この問題は、ターゲットとソースシステムの/etc/mysql/debian.cnfに格納されている別のパスワードから発生しているようです。ソースシステムのdebian.cnfファイルからターゲットシステムのファイルにパスワード行をコピー/ペーストしました。その後、問題なくmysqldを再起動することができました。

注:再起動するには、killall mysqldを実行しなければなりませんでした。

+3

提案したとおり、/etc/mysql/debian.cnfにリストされているパスワードが見つかりました。それを「シークレット」と呼ぼう。次に、MySQLのパスワードをリセットします。「*。*のすべての特権を 'seekrit'によって識別される 'debian-sys-maint' @ 'localhost'に付与する;フラッシュ特権;魅力的な作品! – oalders

+0

ありがとう、それは私のためにdbコピー後に働いた。このユーザ/パスワードはスタートアップスクリプト/etc/init.d/mysqlで使用されているようです。 これはdebian特有のようですが、私は他のLinuxで気づいたことはありません。 –

関連する問題