弥生会計NT(23→24) SQLServer(2014→2022)更新

SQLServerは、MDFファイルを直接操作したり色々やってみたが、一括バックアップツールを使うのが一番簡単。

スタートメニュー>弥生シリーズ>弥生一括バックアップツール
(もし一括バックアップツールが無い場合、弥生製品のインストーラーから追加)

現状のデータをバックアップし、SQLServer更新して、復元すればOK。

●いくつかつまずいた点。

・弥生会計はDocker上のSQLServerでも接続できたが、一括バックアップツールはDocker上のSQLServerに復元できなかった。弥生一括バックアップツールは起動時にSQLServerのインスタンスが一つもないと、自動終了してしまう。MDFファイルを一つずつアタッチしていくなら、Docker上でも問題なかった。

・弥生一括バックアップツールの復元で止まってしまう。

バックアップファイルが入っているフォルダにアクセス権がなかった。
とりあえずEveryoneのフルアクセス付与。

・旧バージョンの弥生会計ファイルのコンバート失敗(エラーコード250)

今回の実験では、
SQLServer(2014→2022)と同時に弥生会計(23→24)も更新。
24で23のデータをコンバートしようとするとエラーになるので、インスタンス名を揃えたり色々やったが、結果的にSQLServerインストール時に、
SQL Server データベース エンジンのアカウント名を
NT AUTHORITY\SYSTEM
にするのを漏らしていたことが原因。

●Docker

・docker-compose.yamlを作成

version: ‘3’
services:
mssql:
image: mcr.microsoft.com/mssql/server:2022-latest
container_name: yayoi-mssql
ports:
– 49153:1433
environment:
– ACCEPT_EULA=Y
– MSSQL_SA_PASSWORD=passw0rd!
– MSSQL_PID=Express
– MSSQL_LCID=1041
– MSSQL_COLLATION=Japanese_CI_AS
volumes:
– ./db/DATA:/var/opt/mssql/data
– ./db/LOG:/var/opt/mssql/log
– ./db/secrets:/var/opt/mssql/sec
– ./home:/home

.はdocker-compose.yamlのある場所

・起動

docker-compose up -d

・接続

SSMSも弥生会計も、
・localhost,49153
・sa
・passw0rd!
と指定すれば接続できる。

・SSMSからSQLServerに接続したとき、
信頼されていない機関によって証明書チェーンが発行されました
と表示される場合、
オプション>接続プロパティ>暗号化接続
のチェックを外す。

●SSMSで直接ファイルの場所を確認する場合

SSMSでDBに接続し
右クリック>プロパティ>ファイル
これでファイルの場所を確認できる。