goo blog サービス終了のお知らせ 

ロト7の38番

利用に関しては自己責任でお願い致します

ubuntu20.04 の mysql における注意点

2021年02月01日 | ubuntu 覚書
 先日で mysql を使うことになったので実機に入れてみたのだが、その際に発生した事についてのメモです。

 通常依存関係がきっちりしている ubuntu なのだが、今回はそうではなかった。

 ubuntu が配布している mysql を入れて、設定を完了して使ってみたところ、なぜか日本語入力がはじかれてしまい、入力できなかった。
 日本語入力後に Enter キーを押すと消えてしまうのだ。
 ネットで検索し、文字コードの問題らしく思えたのでコード設定を手動で行ったのだが結果的に言えばこれではまってしまった。

 mysql は基本 utf-8mb4 という文字コードらしいのだが、これは utf-8 の拡張バージョンと考えてよいらしく互換性があるらしいのだが、私が誤解してしまい一度無理矢理に utf-8 に統一してしまった。が、日本語入力は全く出来ないでさらに状況が悪化してしまい最後には mysql が起動しない状態になってしまった。

 仕方がないので一度 mysql を完全に削除し、以前の状態に戻してから再度入れて設定しなおしたのだが、やはり日本語入力は出来なかった。
 数日間試行錯誤していたのだが、ある記事が目に留まった。
 「mysql の行編集ライブラリは readline ではなく libedit から得ている」
 その記事を元に元々の依存関係を調べてみたところ、私の実機ではlibedit(類)は入っていなかった。
 つまり依存関係ではエラーが出なかったが mysql を入れた時点で実はこのlibedit(類)が不足しており、そのために日本語入力が出来なかったのだ。
 (再インストールする際にも libedit(類) がなくてもエラーが出なかった事を考えると、依存関係の問題かはたまた私の設定の問題かもしれないが詳細は不明です)
 結果としてはその libedit (類)を synaptic で検索しインストールして mysql を設定すればすんなりと日本語入力が可能となった。
・・・新たなものを加える時は下調べが必要だとあらためて反省する出来事だった。
 ( libedit (類)と記載しているのは以下のパッケージをインストールしたからです。もしかしたら上の2つだけでもOKかも知れない)

libedit-dev
libeditline-dev
libeditline0
libeditorconfig-dev
libeditorconfig0
libeditorconfig0-dbg

 ちなみに、ネットでは
 "sudo apt remove --purge '*'(安全性を考えて全文は記載しません)
をしてから再インストールをすれば大丈夫だという記事が海外等にあったのだが、それはお勧めしない。
 何故なら、私の実機では一歩間違えば gnome-control-center ごと削除されなけない危険なコマンドだったからだ。
この案件はでの操作は必ず変更内容を確認をしながら段階を踏むという初歩的な操作で行う事を推奨したい。

まさにネットは玉石混交なのである。

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする