1

データベースの名前変更コマンドを使用しようとしましたが、次のエラーで失敗します。Amazon RDS コンソールから RDS インスタンスを停止するオプションも表示されません。

mysql> rename database foo to foo_orig;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'database foo to foo_orig' at line 1
4

2 に答える 2

2

@ajrealが言及したようにコマンドは削除されましたが、mysqlファイルシステムでメンテナンスを行うことは控えめに言っても危険です。ちょっとしたミスで mysql サービスが起動しません。

推奨される方法は、データベース全体を sql ファイルにエクスポートし、別の名前で再度インポートすることです。サイトをメンテナンス モードにして、このプロセスの実行中に誰もデータを読み書きしないようにすることができます。

mysqldump -u username -ppassword old_database_name > dump.sql

次に、同じサーバーにインポートします。

mysql -u username -ppassword new_database_name < dump.sql
于 2011-11-28T22:34:03.533 に答える
2

このステートメントは MySQL 5.1.7 で追加されましたが、危険であることが判明したため、MySQL 5.1.23 で削除されました。

http://dev.mysql.com/doc/refman/5.1/en/rename-database.htmlから

バージョン 5.2 未満の Amazon RDS を使用する可能性はほとんどありません。
mysqlサーバーにアクセスできる場合は、試すことができます:-

  1. mysql デーモンを停止する
  2. データディレクトリに移動します
  3. mv $old_name $new_name
  4. mysql デーモンを再起動します
  5. mysql データベースにログインする
  6. $old_name のすべての権限を $new_name に更新します (テーブル mysql.db の下)。
  7. フラッシュ権限
于 2011-11-28T15:44:12.973 に答える