mariadbサーバーをsystemdサービス(systemctl start mariadb-server.service
)で起動すると、次のエラーメッセージで失敗します。
メッセージファイル '/usr/share/mysql/english/errmsg.sys' に互換性のないヘッダーがあります。おそらく他のバージョンのMariaDBから来たようです。
内容はerrmsg.sys
次のとおりです(ここでは数行だけを共有します)。
*<84>
¡
Î
^A^K8^Kd^K¶^K^G^Le^L}^L<92>^L°^LÇ^Lø^L^O^Mb^M¥^Mñ^M<^NZ^N<92>^N°^NN^O<94>^OÇ^Oô^O7^PN^Pn^P}^P©^Pß^P ^QP^Q<86>^Q¨^QÇ^QZ^Rh^R<84>^Rµ^Rá^R^C^S$^SB^S<8f>^S³^SÏ^Sï^S)^T:^TÉ^T=^U~^Uö^U^T^V@^Vd^V<86>^V¿^Væ^V^H^Wj^W©^W^L^Xv^X¤^XÓ^X\^Y<8e>^Y¬^YÆ^Yå^YW^Z<99>^ZÕ^Z%^[<81>^[°^[Ö^[+^\e^\è^\,^]L^]<*
errmsg-utf8.txt
フォルダに別のファイルがあります/usr/share/mysql
。内容はerrmsg-utf8.txt
次のとおりです(ここでは数行だけを共有します)。
languages czech=cze latin2, danish=dan latin1, dutch=nla latin1, english=eng latin1, estonian=est latin7, french=fre latin1, german=ger latin1, greek=greek greek, hungarian=hun latin2, italian=ita latin1, japanese=jpn ujis, japanese-sjis=jps sjis, korean=kor euckr, norwegian-ny=norwegian-ny latin1, norwegian=nor latin1, polish=pol latin2, portuguese=por latin1, romanian=rum latin2, russian=rus koi8r, serbian=serbian cp1250, slovak=slo latin2, spanish=spa latin1, swedish=swe latin1, ukrainian=ukr koi8u;
default-language eng
start-error-number 1000
catコマンドを使用してerrmsg-utf8.txt
ファイルの内容をコピーしました。errmsg.sys
cat /usr/share/mysql/errmsg-utf8.txt > /usr/share/mysql/english/errmsg.sys
そしてmariadbサービスを始めましょう。それでも同じエラーが表示され、サービスは開始されません。
私は問題を解決しようとしていますが、私のアプローチが問題を解決する正しい方法であるかどうかはわかりません。
mariadb-server.service
:
[Unit]
Description=MariaDB server
[Service]
Type=simple
ExecStart=/opt/mariadb/10.3.9/bin/mysqld --basedir=/opt/mariadb/10.3.9 --datadir=/var/lib/mysql --lc-messages-dir=/usr/share/mysql/english --plugin-dir=/opt/mariadb/10.3.9/lib/plugin --user=root --log-error=/var/log/mariadb/mariadb.log --pid-file=/var/run/mariadb/mariadb.pid --socket=/var/lib/mysql/mysql.sock
ExecStop=always
Environment=
RestartSec=10**
[Install]
WantedBy=default.target