IIS 上の WordPress で使用している MySQL のバージョンを 5.1 から 5.7 に上げる際に躓いたこと

PHP の方は WebPI で簡単にバージョンアップできたので問題ないのですが、MySQL の方は WebPI に 5.5 までしかなく、さらに直接バージョンアップできないようなので以下のサイトを参考に実施してみました。

[MySQL]5.1から5.7へバージョンアップ(Windows編) (tksoft.work)

しかし、いくつかの箇所で書いている通りに動かなかったり文字化けしている箇所があったので、そのあたりを補足しておきます。

ちなみに参照先の記事ではコマンドプロンプトを使用していますが、私の環境ではすべて PowerShell で実行しています。

初回起動とデータファイルのアップグレード

image

図のようにかかれているのですが、上記をそのまま実施してもエラーになります。正しい手順としては

  1. コマンドプロンプトを起動して「cd "C:/Program Files/MySQL/MySQL Server 5.7/"」と入力する
  2. 「.\bin\mysqld --skip-grant-tables」と入力する。
  3. 最初のウィンドウは「実行中のまま」になるので閉じずに放置。
  4. 新しくコマンドプロンプトを起動して「cd "C:/Program Files/MySQL/MySQL Server 5.7/"」と入力する
  5. 「./bin/mysql_upgrade -u root 」と入力する。

数十行にわたってアップデートされれば成功です。抜粋すると結果はこんな感じ

Checking if update is needed.
Checking server version.
Running queries to upgrade MySQL server.
Checking system database.
mysql.columns_priv                                 OK
mysql.db                                           OK
      :
      :
status   : OK
Upgrade process completed successfully.
Checking if update is needed.

サービスの無効と登録

ここのコマンドもおそらく文字化けして間違っています。

image

正しい手順は

  1. コマンドプロンプトを「管理者権限」で起動。
  2. 「cd "C:/Program Files/MySQL/MySQL Server 5.7/"」を入力。
  3. 「.\bin\mysqld --install MySQL5.7 --defaults-file="C:/Program Files/MySQL/MySQL Server 5.7/my.ini"」を入力。

正常に実行されたなら「Service successfully installed.」と表示されるはずです。

次の Network Service のパスワードについてですが、登録するタイミングでは空にする必要があります。ここのパスワード蘭は空で登録しても再度開くと空登録でも●●●●が表示される仕組みになっています。

環境変数

変更しなくても 5.7 で動作することは確認しましたが、一応 5.1 から 5.7 に直した方がいいかも。コマンドで「mysql --version」と入力しても 5.1 のままなので。

Windows の最新の IME が原因で一部のアプリケーションがフリーズする問題

Audacity という録音ツールを使っていたのですが、この1~2週間の間に頻繁にフリーズするようになりました。特定の操作、特にキーボードで操作しようとするとフリーズします。とはいってもアプリケーション自体はフリーズはしていなくてテキストのカーソルの点滅は常に動いている状態だけど、なんの操作も受け付けなくなるような現象です。

例えば以下は保存ダイアログなのですが、マウス操作している間はなんともないのですがファイル名をキーボードで入力しようとするとそれ以降何の操作も受け付けなくなります。

image

固まるのは上記のような形式のダイアログで、例えばメモ帳の保存ダイアログ形式では固まることはありません。

固まる原因が分からなくてこれについて Twitter でつぶやいたところ以下のリプライがありました。

OD−10Zさん 「@onodera_sf なんか、IME側の挙動が変わった影響とかなんとかで、日本語表示にしてるとキーボード入力した瞬間に固まるみたいです。私のほうは英語表示に切り替えたら解決しました。」

どうも IME に原因があるらしく、ネットで調べて試しに IME の互換性をオンにしてみたところ問題なく動作するようになりました。設定場所は以下の場所にあります。

  • 設定 → 時刻と言語 → 言語 → 日本語 (オプション) → Micorsoft IME (オプション) → 全般

image

ただ、古いバージョンを使用して対処しているので最終的には最新の IME で直ってくれるのがうれしいのですが、場合によっては古いアプリケーションは切り捨てられる可能性もあるかもしれませんね。互換性 IME もいつまで残ってくれるかもわかりませんし。

Windows Tips「回復パーティションが邪魔をしてディスクサイズを拡張できない問題を diskpart を使用して解決する」を追加しました

Windows でディスクを後から拡張した際に回復パーティションが邪魔をして拡張できない問題がたまにあったので、やり方を調べつつ手順をまとめてみました。

一応 Tips 通りに操作すれば回復パーティションを維持しつつディスクの拡張は可能ですが、やはりシステムに影響のある操作ですので、不安な場合はツールを使った方が手っ取り早いかと思います。

UWP アプリケーションをデバッグ実行したときにエラーで配置されたなかった時の原因と対処法

どのタイミングでそうなったのかわからなかったのですが、表題の通り VS2019 で新規で UWP プロジェクトを作成して実行してもエラーで実行できませんでした。Windows を再起動してもダメ。

とりあえずネットで探して以下のページで紹介されている内容で対応しました、

]]>

SFTP の Tips を公開しました

Windows 10 や Windows Server 2019 では SFTP (SSH) に関して OpenSSH のインストールが簡単になっており、わざわざ Linux 系のサーバーを使わなくても SFTP サーバーの構築が簡単にできるようになりました。

以前 SFTP サーバーの構築の機会があったので、その手順について Tips としてまとめてみました。上記以外の OS では OpenSSH のダウンロードからのセットアップが必要ですが、その手順についても一緒にまとめています。

今回はセットアップと実際にコマンドを使用して SFTP によるファイルの送受信までを書いていますが、後で .NET を使用した SFTP 送受信プログラムの Tips も書こうかと思っています。

image

]]>

WiX の Tips を公開しました

Windows 向けアプリケーションのインストーラーを作成するのに使われることの多い WiX に関する Tips をいくつか作成しました。WiX を使用すると Visual Studio に標準で含まれているセットアッププロジェクトよりも、より自由な形でインストーラーを作成することができます。

ゲーム「リトルセイバー」の体験版を配布したときも WiX を使用してインストーラーを作成しており、せっかくなので覚えたことを Tips にしてみました。

Tips は以下のページにまとめております。

---------------------------------

  • プログラム配布用の Windows インストーラーを作成ための WiX をセットアップする
  • Wix を使用して Windows インストーラー「MSI」を作成する part1
  • Wix を使用して Windows インストーラー「MSI」を作成する part2
  • バージョンアップしたアプリケーションを配布するインストーラーを WiX で作成する
  • インストーラーファイルの付加情報を日本語で設定する
  • CAB ファイルを MSI ファイルの中に含める
  • 64bit アプリケーションをインストールするインストーラーを作成する
  • Ngen.exe を使用してインストールしたプログラムの起動を高速化

image

]]>

Windows で遊べるゲーム「リトルセイバー」が DMM GAMES にて公開されました。「遊び放題」プランでも遊べます。

image リトルセイバーは現在、Steam や MSストア、DLsite で公開していますが、今回新たに DMM GAMES にて配信開始されました。内容は他で公開しているものと変わりませんが、DMM GAMES を中心に遊んでいる方は手軽に遊べるようになりました。 価格は他で購入する場合と変わらないように 980 円で統一しています。現在ポイント還元中 (たぶん 20%) なので、他のサイトよりはお得になっていると思います。 また、DMM GAMES には特有のプラン「遊び放題プラン」があり、こちらでもリトルセイバーを遊べるようになっています。たしか月額 980 円だったので、1か月限定で考えればかなりお得なんじゃないかと思います。すでに遊び放題プランに加入しているからであれば気兼ねなく遊ぶことができると思います。 ストアページは以下のリンク先となっています。

対応プラットフォームは他と同じく Windows 7 以降となっています。DMM GAME PLAYER のインストール(無料)が必要らしいです。 リトルセイバーの公式ページと体験版ダウンロードは以下のリンク先となっています。 ]]>

リトルセイバーのプレイデモムービー#16, #17をニコニコ動画にアップしました

体験版を公開しましたのでそちらもよろしくお願いします!

]]>

ゲーム「リトルセイバー」の体験版をリリースしました!!

LittleSavior_Stage09-2_20190112_173242.avi_snapshot_05.26_[2019.02.28_01.14.23]_2 前回の通知のとおりフルバージョンのリリースがもう少し先に延びてしまったため、先に体験版の方をリリースすることにいたしました。とりあえずこちらは2月中にリリースできてよかったです。(リリース日にプログラムの修正を行ってパッケージングしなおす始末でした( ^ ^;)) フルバージョンの方は最初は UWP 版でのリリースになるので Windows 10, Windows 10 Mobile 限定になるのですが、体験版の方はデスクトップ版としてビルドしておりますので Windows 7 ~ Windows 10 で動作いたします。XP や Vista については .NET Framework 4.6.1 を使用している都合上動作させることはできません。 また、UWP 版については公開後は Microsoft ストアからインストールするだけで動作しますが、デスクトップ版で遊ぶにはほかに以下のコンポーネントをインストールする必要があります。インストールされていない場合はリンク先からダウンロードして事前にインストールしてください。

デスクトップ版のリトルセイバー体験版は Windows にインストールする形をとっています。インストール時にコンパイルを行いますので、単純に Exe を起動するのに比べて多少はパフォーマンスは改善されているかと思います。ただ、UWP 版の方がパフォーマンスは確実にいいので、もし体験版を遊んで気に入っていただければ今後公開予定の UWP 版でぜひ遊んでいただければと思います。 体験版は以下のページからダウンロードすることができます。 ゲームについての説明はまだ書いている途中ですが以下のページから各ページを見ることができます。随時更新していきますので完成までお待ちください。 ]]>

ゲーム「リトルセイバー」の予定リリース環境

なんとなくメモ書きです。

リトルセイバーは MonoGame で制作しているのでフレームワーク的には他の環境でも動くようにはなっているのですが、一部 C++ でごり押ししているところがあるのでその部分は環境ごとに実装しないといけないようになっています。

今のところリリース対応プラットフォームで確定しているのは「Windows 10 (UWP)」と「Windows 10 Mobile (UWP)」のみなのですが、ほかの環境にもリリースしたいなーという思いはあります。

とりあえず対応環境ごとにリリースするかを希望、期待値を込めて数値にしてみました。数値が高いほどリリースする可能性は高くなってます。

プラットフォーム 期待値
Windows 10 (UWP) 100%
Windows 10 Mobile (UWP) 100%
Windows 7, 8.1, 10 (デスクトップ) 90%
Windows(?) (Steam) 20%
Android 20%
iOS 0%
Xbox One (UWP) 80%
Windows Vista 以前 0%
Windows Phone 8.1 以前 0%
その他コンシューマゲーム機 1%
Linux 1%
macOS 0%
Silverlight 0% (開発版のみ)

上記の数値はなんとなくで決めているのでリリース後の状況に応じて変わる場合もあります。

Xbox One は理論上動くはずなのですが、まだ実機を持ってなく未確認なので80%。

Steam は詳しく調べていないので 20% ぐらい。リリースできるプラットフォームを指定できるのかな? Windows デスクトップと同じ動作だったら問題なさそう。ただ個人でポイとリリースできる場所ではないようです。

1%のものは動かせたらいいなーぐらいの思いだけど、情報としては全くの未知の領域。

mac 系は現行の開発環境から明らかに開発環境を増やさないといけないのが分かっているので、PCとかあんまり増やしたくないという思いでリリース予定はありません。

すでにサポート対象外の環境にはリリースしない予定なので 0% です。

]]>