2011-10-19 10 views

答えて

1

テーブルを削除するだけではなく、mysql権限データベース全体を削除したことに注意してください。 'mysql_install_db'というスクリプトを見つける必要があります。これにより、mysql権限データベースが再作成されます。

権限データベースを削除して再作成することによって、ユーザー/ etcが存在しなくなったために他のアプリケーションが機能しなくなる可能性があることに注意してください。

+1

アプリケーションのポイント。 –

+0

@James - ありがとう - 私はこの壁を前に打ったので、これを知っている;-) –

+0

私は誤ってこれをやってしまった(DBを移行して、それを誤って自分自身に移行させようとしていた)。 ..)しかし、私のユーザーはまだログインすることができました。ユーザー\パスワードはキャッシュされていますか? – dangel

2

できることはたくさんあります。あなたは、あなたが--skip」でMySQLを実行する必要がありますすることができない場合

RESTORE TABLE mysql.user FROM '/path/to/backup/directory' 

:あなたはクエリを実行することができますし、最近では「バックアップテーブル」を使用してデータベース全体をバックアップした場合は、このクエリを実行しようとすることができますコマンドラインで-grant-tablesオプションを使用します。これにより、あなたは一番簡単にアクセスできます。また、mysql_install_dbコマンドを実行して再作成することもできます。あなたのテーブルには、あなたはまた、mysqlの/ binディレクトリにあるファイルmysql_upgradeコマンドを実行することで修正することができ、この

+-----------------+---------------+------+-----+---------+-------+ 
| Field | Type | Null | Key | Default | Extra | 
+-----------------+---------------+------+-----+---------+-------+ 
| Host | varchar(20) | | PRI | | | 
| User | varchar(6) | | PRI | | | 
| Password | varchar(41) | | | | | 
| Select_priv | enum('N','Y') | | | N | | 
| Insert_priv | enum('N','Y') | | | N | | 
| Update_priv | enum('N','Y') | | | N | | 
| Delete_priv | enum('N','Y') | | | N | | 
| Create_priv | enum('N','Y') | | | N | | 
| Drop_priv | enum('N','Y') | | | N | | 
| Reload_priv | enum('N','Y') | | | N | | 
| Shutdown_priv | enum('N','Y') | | | N | | 
| Process_priv | enum('N','Y') | | | N | | 
| File_priv | enum('N','Y') | | | N | | 
| Grant_priv | enum('N','Y') | | | N | | 
| References_priv | enum('N','Y') | | | N | | 
| Index_priv | enum('N','Y') | | | N | | 
| Alter_priv | enum('N','Y') | | | N | | 
+-----------------+---------------+------+-----+---------+-------+ 
+0

ところで、私は 'my/db'という名前のデータベースを削除できません。私は 'drop database my/db'を使って構文の誤りを表示します。 – coolesting

+0

データベース名には\または/を含める必要があります(通常はできません)。通常の命名規則では、CamelCaseと_を使用して命名します。 http://dev.mysql.com/doc/refman/5.1/en/identifiers.html - 8.2。スキーマのオブジェクト名 –

+0

しかし、作成する前に 'my/db'というテーブルがあります。削除するだけですか? – coolesting

0

のようになりますFound Here

いずれかの方法。 そのファイルを実行するだけで、すべてのテーブルが修正されます。

+0

mysql_update -root -v -fを実行すると、\ bin> mysql_upgrade -u root --force mysql_upgrade:1524:MySQLサーバーに接続中にプラグイン '* 3341D225A70FDF32F7D6E158192BF9A65654BE7F'がロードされない アップグレードプロセスでエラーが発生し、続かない。 – FMaz008

関連する問題