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 のような描画ボード

推薦する

ショッピングカートのスライド削除効果を実装するReactネイティブサンプルコード

基本的にすべてのeコマースプロジェクトにはショッピングカートの機能があります。これはreact-na...

MySQL mysqladmin クライアントの使用の概要

目次1. サーバーの状態を確認します。 2. ルートパスワードを変更します。 3. mysqlser...

MySQLトリガーの詳細な説明と簡単な例

MySQLトリガーの簡単な例文法CREATE TRIGGER <トリガー名> -- トリ...

HTML の基本概要推奨事項 (段落)

HTML段落段落は <p> タグによって定義されます。例<p>これは段落で...

テーブルリストを破棄するには、標準のdl、dt、ddタグを使用します。

現在、ますます多くのフロントエンド開発者が、元のテーブル レイアウトを xHTML + CSS に置...

Firefoxでリンクをクリックしたときに点線の枠線を削除する方法

今日、ブラウザの互換性の問題にいくつか遭遇しました。そのうちの 1 つは奇妙に感じました。Firef...

Idea で Docker を使用して SpringBoot プロジェクトをデプロイする詳細な手順

序文プロジェクト要件: Dockeridea に Docker プラグインをインストールし、Dock...

1 つの記事で Nginx ロケーション マッチングの実装を理解する

チームはフロントエンドとバックエンドを分離しているため、フロントエンドが Nginx とノード層を引...

JavaScriptは、ユーザーがチェックボックスをオンにする必要があるプロトコルの例を実装します。

js では、ログインまたは登録を確認する前に、ユーザーが特定の契約書を読むように設定します (使用...

IISとAPACHEはHTTPSへのHTTPリダイレクトを実装しています

7 のMicrosoft の公式 Web サイトから HTTP Rewrite モジュールをダウンロ...

Manjaro インストール CUDA 実装チュートリアル分析

昨年末、Thinkpad T450 のデュアルシステムの opensuse を Manjaro に置...

表に斜めヘッダー効果を出す5つの方法

誰もがテーブルをよく知っているはずです。コード内でよく見かけます。テーブルにスラッシュ ヘッダーを追...

ドキュメントの場所の比較

<br />2 年前に PPK が投稿した素晴らしいブログ記事では、contains()...

Nginx がフロントエンド リソースへのクロスドメイン アクセスの問題をどのように解決するかの詳細な説明

フロントエンドのクロスドメイン問題に2日間近く悩まされましたが、ようやくngnxを使って解決したので...

Vue3 コンポジション API でロジックの再利用を実装する方法

Composition API はロジック再利用手順を実装します。ロジックコードを関数に抽出します。...