MySQLデータベース移行におけるデータ文字化けの問題を解決する

MySQLデータベース移行におけるデータ文字化けの問題を解決する

リーダーの指示のもと、Java プロジェクトを引き継ぎ、リファクタリングを行う必要がありました。同時に、プロジェクト全体の構成は情報イノベーションの要件を満たす必要がありました。
まず、次の 2 つの点を満たす必要があります。
1. 国内のデータベースDameng 8を使用してMySQLデータベースを置き換えます
2. コンテナの展開にTomcatの代わりにKingdeeミドルウェアを使用する

たゆまぬ努力により、DM8 データベースのローカル構築とインストールを完了し、コード フレームワーク内のデータベース ソースを変更して DM8 データベースを置き換えるデモ検証作業も完了しました。

ドライバークラス名: dm.jdbc.driver.DmDriver
    URL: jdbc:dm://10.0.3.132:5236/XC-SERVICE?zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8
    ユーザー名: XC-SERVICE
    パスワード: 123456789

これでコードは正常に動作するようになりました。一部の SQL スクリプトを標準化する必要があることを除いて、他の問題はありません。

今最も重要なことはデータを移行することです。

つまり、mysql ライブラリを dm8 に移行することです。
移行方法: DAMO独自のデータベース移行ツールを使用する

ここに画像の説明を挿入

DAMOにはデータベース移行ツールが付属しています

データテーブル構造とデータ移行の影響

ここに画像の説明を挿入

移行が完了すると、データ テーブルの構造に問題はないが、中国語のデータがすべて文字化けしていることに驚かれるでしょう。

いろいろな方法を試し、Baiduで何度も検索しましたが、解決策が見つかりませんでした。その後、DAMOフォーラムに行って解決策を探すしかありませんでした。

ついに、データ移行後の文字化けの問題に対する魔法のような解決策を見つけました。

ここに画像の説明を挿入

データ移行ツールを使用してデータ ソースを構成する場合は、ドライバーの指定を選択します。

ここに画像の説明を挿入

URL アドレスを指定します:

jdbc:mysql://10.0.3.131:3306/sys-service?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai

同時に、Maven がローカル コンピューターにダウンロードするドライバーを指定します。

さて、これでデータを移行できます

移行が完了すると、データが正常で文字化けしていないことが魔法のようにわかります。 ! ! !

ここに画像の説明を挿入

追記

国産データベースとしては、DAMO はやはり良い製品ですが、ネット上の情報が少なすぎて、百度でも見つからないかもしれません。皆さんのお役に立てればと思い、この内容を書いています。

これで、MySQL データベースのデータ移行におけるデータ文字化けの問題を解決する方法についての記事は終わりです。MySQL 移行におけるデータ文字化けに関するより関連性の高いコンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MySQL は ACID トランザクションをどのように実装しますか?
  • MySQLにおけるACIDトランザクションの実装原理の詳細な説明
  • MySQLの驚くべき暗黙の変換
  • MySQL の null 制約のケースの説明
  • MySQL 接続例外とエラー 10061 の解決方法
  • MySQL トランザクション制御フローと ACID 特性

<<:  Windows サービス 2016 Datacenter\Stand\Embedded アクティベーション方法 (2021)

>>:  CSS ペイント API: CSS のような描画ボード

推薦する

Vue.js スロットにおけるスコープ付きスロットの使用法の詳細な説明

目次スロットなしVue2.x スロットスロット付き名前付きスロットスロット属性なしスロットの簡単なサ...

Vueコンポーネント間の通信の非常に詳細な要約

目次序文1. Props、$emit一方向データフロー2. $親、$子3. $attrs、$list...

Vue+WebSocket ページでの長時間接続のリアルタイム更新

最近、Vue プロジェクトではデータをリアルタイムで更新する必要があります。折れ線グラフは 1 秒ご...

SQLインジェクションの詳しい解説 - セキュリティ編(第2部)

この記事に誤りがあったり、ご提案がありましたら、お気軽にご連絡ください。よろしくお願いいたします。は...

JavaScript 基礎シリーズ: 関数とメソッド

目次1. 関数とメソッドの違い2. 良い関数の書き方2.1 正確な命名2.1.1 関数の命名2.1....

インデックスを設計する際の原則は何ですか? インデックスの障害を回避するにはどうすればよいでしょうか?

目次主キーインデックス頻繁にクエリされるフィールドのインデックスを作成する大きなフィールドのインデッ...

MySQL共通ストレージエンジンの機能と使用方法の詳細な説明

この記事では、一般的な MySQL ストレージ エンジンの機能と使用方法を例を使って説明します。ご参...

アリババの中秋節ロゴとウェブサイトのデザインプロセス

<br />まずアイデアを考え、次にスケッチを描き、次にマウスでスケッチし、最後にフラッ...

Nodejsはgitee実装コードに自動的に同期するドキュメント同期ツールを作成します

本来の意図このツールを作った理由は、コンピューターを使用しているときにいつでも毎日の仕事や生活を記録...

Vueカウンターの実装

目次1. カウンターの実装2. 成果を達成する1. カウンターの実装ページにカウンターを実装するだけ...

Pengyou.com モバイル クライアントのダウンロード ページのデザイン共有 (画像とテキスト)

まずは簡単なデータを見てみましょう。 Googleが発表したレポートによると、 ①中国の都市の97%...

HTML 5のドラフトは正式な標準にはならなかった

<br />昨日、W3C で新しいHTML 5 ドラフト (ワーキング ドラフト) が ...

MySQL のタイムスタンプと日付時刻のタイムゾーンの問題によって生じる DTS の落とし穴の詳細な説明

目次MySQL で現在の時刻を表現するにはどうすればよいでしょうか?結論は確認するピットMySQL ...

よく使われるシングルページアプリケーションウェブサイト共有

CSS3お願いしますこのウェブサイトを自分で見て、パラメータを変更し、CSS3効果をオン/オフにする...

HTML 描画ユーザー登録ページ

この記事では、HTML描画ユーザー登録ページの具体的な実装コードを参考までに共有します。具体的な内容...