(編集 2: ありがたいことに、情報が入ってきました。ODBC を介してのみアクセスされ、MySQL データベースに設定したものと一致するように接続文字セットを設定できます。したがって、この質問全体は次のようになります。ODBC と両方の接続文字セットを設定すると、データベースを UTF-8 に変更しましたが、これでデータが破損することはありませんか? (サーバー/データベースの文字セットは latin1 です) 簡単な「はい」または「いいえ」で理由を簡単に説明していただければ幸いです。
--------------- 残りは元の背景情報であり、もはや実際には関係ありません.--------------
(編集:明確にするために:データはすでに正しくインポートされています。これは接続文字セットに関する質問のみです。)
新しく作成した MySQL データベースの接続文字セットを照合およびサーバーの文字セットに変更するかどうかを決定しようとしています。
サーバーとその照合文字セットは、 MySQL 4.1 を実行している古いサーバーと同じ - latin1 に設定されています。一部のデータは mysql.exe で既にインポートされており、正しいことが検証されています。
サーバー管理者が MySQL 5.5 をインストールし、ある時点で新しいデータベースを作成したとき、接続文字セットはデフォルトの UTF-8 から変更されませんでした。
古いサーバーは、照合または接続文字セット用の変数が設定されていないと報告したので、私の質問は次のとおりです: (現在の設定である UTF-8 が最も正しいルートであると想定しています)
- どこを探して何を設定するか(経験からのヒント)
- latin1 に設定することを選択した場合、データベースのどこかに書き込むスクリプトがデータを再び破損する可能性がある場合
- または、データを破損することなく自由にオンとオフを切り替えることができるかどうか、つまり、決定を延期できるかどうか。
データベース サーバーの管理者は、私に回答を与えるための情報を持っていません。また、古いデータベースには情報がないため、確認したいのですができません。
これは 1GB の .sql ファイルで、インポートするには TextPad で段階的に編集する必要があるため、これが重要な設定であるかどうかを知ることで時間を節約できます。
現時点での私の最善の計画は、設定を変更せず、データをインポートしてバックアップすることです。接続文字セットが正しく設定されていないためにスクリプトがデータを破損した場合は、バックアップが復元されます。この計画に問題はありますか?