MySQLデータベースのインストールは、DocuWareのサポートの一部ではありません。
MySQLはサードパーティのアプリケーションであるため、トラブルシューティング、追加設定の推奨、インストールが完全に完了したかどうかの確認はできません。
インストール中またはインストール後にデータベースが破損した場合、DocuWareは破損したシステムに対して責任を負いません。
Question:
内部データベースV3(MySQL 8)を内部データベースV4(MySQL 8.4)にアップグレードする方法
Answer:
MySQL 8からMySQL 8.4へのアップデートは2つのステップで行います。
現在インストールされている MySQL のバージョンは、
SHOW VARIABLES LIKE "%version%";
必要なファイルはすべてここからダウンロードできます:
ここをクリック
重要な注意事項:
バックアップ/ダンプを試みる前に、データベースにアクセスしているすべてのアプリケーションを確実にシャットダウンしてください。
データベースの有効なバックアップがあることを確認してください。
インストールディレクトリのバックアップがあることを確認してください。
MySQLをアップグレードした後、DocuWareを直接アップグレードしないでください。
システムをしばらく稼動させて、完全な機能がまだ提供されているかどうかを確認してください。
MySQL 8からMySQL 8.4
MySQLサービスの停止
正しい名前で新しいサービスを作成したい場合は、現在存在するMySQLサービスを削除してください。
後で新しい名前でサービスを再作成することで、ServiceControl内に内部データベースが「Internal Database V4」として表示されます。
それ以外の場合は、古い「Internal Database V3」名を使用して古いサービスを使用できます。
sc delete DWMySQL3
InternalDatabaseV4.zipをデフォルトの場所 "C:˶Program FilesDocuWare˵Internal Database V4 "またはお好みの場所に解凍します。
basedir
datadir
secure-file-priv
デフォルトでは、basedir は "C:/Program Files/DocuWare/Internal Database V4" に、datadir は "C:/Program Files/DocuWare/Internal Database V4/Data" に、secure-file-priv は "C:/ProgramData/DocuWare/Internal Database V4/Uploads" に設定されています。
すべてのパスが有効であることを確認します - 疑わしい場合は、ファイルエクスプ ローラですべてのパスにアクセスします。
このステップの最初にサービスを削除した場合は、次のようにサービスを再作成し ます:
sc create DWMySQL4 binPath= "¦C:¦Program FilesDocuWare¦Internal Database V4binmysqld.exe" --defaults-file=¦C:¦Program Files¦DocuWare¦Internal Database V4my.ini"DWMySQL4" DisplayName= "DocuWare Internal Database V4" start= "auto"
変更されたフォルダーパスについては、適宜調整してください。ただし、マスクされた文字が正しく含まれていることを確認してください。
すべてが正しく行われた場合、サービスコントロール、Windowsサービス、またはコマンド
sc start DWMySQL4
MySQL 8.4の起動時に、テーブルは自動的に更新されます。
MySQL 8.4でデータベースの照合順序と文字セットを変更する
MySQL Workbenchまたは同様のツールを使用してMySQLサーバーに接続し、特権ユーザーとしてログインします。
DELIMITER //
CREATE PROCEDURE `dwsystem`.UpdateCharsetAndCollation`(IN DATABASE_NAME VARCHAR(255))
BEGIN
DECLARE done INT DEFAULT FALSE;
DECLARE column_done INT DEFAULT FALSE;
DECLARE tableName VARCHAR(255);
DECLARE columnName VARCHAR(255);
DECLARE columnType VARCHAR(255);
DECLARE columnCollation VARCHAR(255);DECLARE table_cursor CURSOR FOR
SELECT table_name
FROM information_schema.tables
WHERE table_schema = DATABASE_NAME;DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
OPEN table_cursor;
read_loop:LOOP
FETCH table_cursor INTO tableName;
IF done THEN
LEAVE read_loop;
END IF;SET @table_sql = CONCAT('ALTER TABLE ', DATABASE_NAME, '.', tableName, ' CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;');
PREPARE stmt FROM @table_sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
END LOOP read_loop;
CLOSE table_cursor;
END//
DELIMITER ;
SET @@FOREIGN_KEY_CHECKS = 0;
ALTER DATABASEdwsystemCHARACTER SET = utf8mb4 COLLATE = 'utf8mb4_0900_ai_ci';
call UpdateCharsetAndCollation('dwsystem');
SET @@FOREIGN_KEY_CHECKS=1;
アップグレード中に何らかのエラーが発生した場合は、悲しいことに、最後に機能したバージョンにロールバックしなければなりません。
ご注意:この記事は英語からの翻訳です。この記事に含まれる情報は、オリジナルの英語版製品に基づくものです。翻訳版の記事で使用されている文法などには、細かい誤りがある場合があります。翻訳の正確さを完全に保証することは出来かねますが、ほとんどの場合、十分な情報が得られると思われます。万が一、疑問が生じた場合は、英語版の記事に切り替えてご覧ください。
