MySQLデータベースの名前を高速かつ安全に変更する方法(3種類)

MySQLデータベースの名前を高速かつ安全に変更する方法(3種類)

MySQLデータベースの名前を変更する方法

Innodb エンジン テーブルのデータベース名を変更する方法と、MyISAM エンジンを操作する方法。

テーブルが MyISAM エンジンの場合は、データベース ディレクトリに直接移動し、mv を使用してフォルダーの名前を変更できます。 Innodb はまったく受け入れられず、関連するテーブルが存在しないというメッセージが表示されます。

最初の方法: データベースの名前を変更することは非推奨です

データベース名を old_db_name から new_db_name に変更します

これはバージョン 5.1.7 から 5.1.23 で利用可能ですが、公式には推奨されておらず、データが失われるリスクがあります。

2番目の方法: mysqldumpバックアップ

1. 名前を変更する必要があるデータベースを作成します。
2.mysqldumは名前を変更するデータベースをエクスポートします
3. 元の古いライブラリを削除する(本当に必要かどうかを判断する)
もちろん、この方法は安全ですが、データ量が多い場合は時間がかかります。

mysqldump -uxxxx -pxxxx -h xxxx db_name > db_name_dump.SQL #Backupmysqldump -uroot -p123456 -h127.0.0.1 test > test.sql #Backupmysql -uxxxx -pxxxx -h xxxx -e “CREATE DATABASE new_db_name”
mysql -uxxxx -pxxxx -h xxxx new_db_name < db_name_dump.SQL #復元 mysql -uxxxx -pxxxx -h xxxx -e “DROP DATABASE db_name”

3番目の方法: 名前変更テーブルを高速かつ安全に走査する

ここではスクリプトを使います。とても簡単なので、誰でも理解できると思います。

#!/bin/bash
# db_nameデータベース名がnew_db_nameに変更されたと仮定します
# MyISAM はデータベースディレクトリ内のファイルを直接変更できます。mysql_login=mysql -uroot -p123456
olddb="db_name"
newdb="新しいデータベース名"

#$mysql_login -e “データベース$newdbを作成
$mysql_login -e 'データベースが存在しない場合は作成する $newdb'
list_table=$($mysql_login -Nse "information_schema.TABLESからtable_nameを選択
    ここで、TABLE_SCHEMA='$olddb'")
$list_table 内のテーブルの場合;
する
$mysql_login -e "テーブル名を $olddb.$table から $newdb.$table に変更します"
終わり;
#$mysqlconn -e “データベース$olddbを削除”

ここでは、テーブル名を変更するために rename table コマンドを使用しています。ただし、新しいテーブル名の後にデータベース名を追加すると、古いデータベースのテーブルが新しいデータベースに移動されます。したがって、この方法は安全かつ高速です。

最後に、名前の変更の使用方法を添付します

コマンド: テーブルの元のテーブル名を新しいテーブル名に変更します。

例: テーブル名をMyClassからYouClassに変更します
mysql> テーブルの名前を MyClass から YouClass に変更します。

RENAME を実行するときは、ロックされたテーブルやアクティブなトランザクションが存在することはできません。また、元のテーブルに対する ALTER および DROP 権限、および新しいテーブルに対する CREATE および INSERT 権限も必要です。

MySQL は、複数テーブルの名前変更中にエラーが発生した場合、名前が変更されたすべてのテーブルのロールバック名前変更を実行し、すべてを元の状態に戻します。

Mysql: Navicat を使用してスケジュールされたバックアップを実装する

1. 機能説明

データベース内のデータは毎日バックアップする必要があり、問題が発生した場合にはバックアップを適時に復元できます。

2. 実装手順

Navicatを開いてプランをクリックし、新しいバッチジョブをクリックします。

C:\Users\ADMINI~1\AppData\Local\Temp\1581090423440.png

バックアップするデータベースを選択

1581090544692.png

選択して保存をクリック

1581091294049.png

上部のツールバーをクリックしてスケジュールされたタスクを設定します

1581091153168.png

「計画」をクリックし、「作成」をクリックして、実行時間を設定します。

1581091115424.png

1581091396707.png

設定は成功し、データはデフォルトで C:\Users\Administrator\Documents\Navicat\MySQL\servers にバックアップされます。

Navicat でバックアップをクリックしても表示できます。バックアップを復元するには、バックアップ ファイルをクリックして選択します。

バックアップが C:\Users\Administrator\Documents\Navicat\MySQL\servers にあることを確認します。

Navicat でバックアップをクリックしても表示できます。バックアップを復元するには、バックアップ ファイルをクリックして選択します。

1581091790901.png

これで、MySQL データベースの名前を変更する 3 つの迅速で安全な方法についての記事は終了です。MySQL データベースの名前変更の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • 年末ですが、MySQL パスワードは安全ですか?
  • MySQLを安全にシャットダウンする方法
  • MySQLプロセスを安全かつ適切にシャットダウンする方法
  • MySQLデータのセキュリティを確保するための提案
  • MySQLインスタンスを安全にシャットダウンする方法
  • MySQL セキュリティ管理の詳細

<<:  Docker を使用した nGrinder パフォーマンス テスト プラットフォームの導入プロセスの分析

>>:  クリーンなXHTML構文

推薦する

MySQL シリーズ 8 MySQL サーバー変数

チュートリアルシリーズMySQL シリーズ: MySQL リレーショナル データベースの基本概念My...

Baota Linux パネル コマンド リスト

目次Pagodaをインストールする管理塔Nginx サービス管理Apache サービス管理MySQL...

マークアップ言語 - 簡略化されたタグ

123WORDPRESS.COM HTML チュートリアル セクションに戻るには、ここをクリックして...

vue3.0共通コンポーネントの自動インポート方法の例

1. 前提条件インポートには require.context メソッドを使用します。vite で作成...

IDEA を使用して Web プロジェクトを作成し、Tomcat に公開する方法

目次ウェブ開発1. Web開発の概要Tomcatのインストールと設定Tomcatをインストールする2...

MySQLの明示的な型変換の簡単な分析

CAST関数前回の記事では、型変換を表示するために使用する CAST 関数について説明しました。暗黙...

Apache をインストールした後、サービスを開始できません (サービスを開始するとエラー コード 1 が表示されます)

目次1. エラーメッセージ2. エラーの原因3. 解決策1. エラーメッセージ1. インストール後、...

Vue3 カプセル化された虫眼鏡コンポーネントのサンプルコード

目次コンポーネントインフラストラクチャ目的: 画像拡大鏡機能を実現するvueuseをインストールする...

ウェブページ作成のテスト問題を全て解けますか?

Web ページのデザインに関する質問です。すべてに答えられるでしょうか? 1. 単一選択の質問 (...

デザイン理論: コンテンツプレゼンテーションのための 10 のヒント

<br /> テキスト、記号、リンクの3つの側面に焦点を当て、主に中国語で、個人的な執筆...

vue.js 動的コンポーネントの詳細な説明

:動的コンポーネントv-bind:is="component name" を使用...

React Native JSIはRNとネイティブ通信のサンプルコードを実装します

目次JSIとはJSIの違いiOS で JSI を使用するiOS 設定RN側の構成jsはパラメータ付き...

MySQLのパラメータについてお話しましょう

序文:以前の記事では、特定のパラメータの機能についてよく紹介してきました。しかし、MySQL パラメ...

CentOSにDockerをインストールする方法

ここでは比較的簡単なインストール方法のみを紹介します。 1. yumを使用してインストールするyum...

JSはショッピングカート効果の単純な加算と減算を実装します

この記事の例では、ショッピングカートの簡単な追加と削除を実現するためのJSの具体的なコードを参考まで...