- blogs:
- cles::blog
MariaDB が yum/dnf でアップデートできなくなっていたので
mysql
centos7
centos8
rockylinux9 MariaDB は yum/dnf で自動的にアップデートされるようにしていたのですが、いつの間にか以下のようなエラーが出るようになってしまっていました。
どうやら GPG のキーが新しくなった*1ようで、エラーを解消するにはこれをインストールしてやる必要があります。
MariaDB の公式マニュアル通りに以下を実行することで大丈夫でした。
Dokcer で Redmine + MariaDB サーバを立ててみた
docker
redmine
mysql
dockercompose 今度は Redmine + MariaDB を Docker 化していきます。
Redmine も MariaDB もどちらも公式のイメージを使います。
今回の Redmine は要件として
- バージョンは 3.x 系統であること
- パスは /redmine で参照できること
というのがあるので、この部分についてはカスタマイズを行っています。
ファイルを配置したら以下のコマンドで起動できます。
起動ができたら http://hostname:3000/redmine/ でアクセスができるはずです。
† マイグレーション
既存の環境からの DB のマイグレーションについては、docker-compose exec redmine-db bashで MariaDB のコンテナに入り、MariaDB にデータをインポートすれば良いと思います。ファイルについては ./data ディレクトリ以下に必要なファイルをコピーすれば OK です。
† ファイル構成
php + MariaDB で Malformed communication packet というエラーが出るときは
mysql
php
centos7 今日は朝から php + MariaDB の環境で以下のエラーが発生して困ってしまいました。
Malformed communication packet というエラーは初めて見たかもしれません。
† MariaDB をダウングレードして暫定対処
原因としては MariaDB のバージョンアップに起因するようなので、以下のように MariaDB をダウングレードして暫定対象しました。
† 同じ話題が Stack Overflow にも
以下の Stack Overflow のエントリににもあるように、意外と同じところでハマった人は多いようです。
これを見ると PHP 7.3 では発生しないという話も出ているので PHP 7.1 と最新版の Maria DB の問題みたいですね。
Firefox が米国で DoH(DNS over HTTPS) を有効に
firefox
dns
cloudflare Firefox が米国で DoH(DNS over HTTPS) を有効にしたことがニュースになっていたのでメモ。
HTTP については 2016 年に始まった Let's Encrypt のおかげで急速に HTTPS 化が進みましたが、DNS の暗号化については DNS over TLS と DNS over HTTPS のどちらが良いか*1という解決が難しい問題もあり、すんなりとは行きそうにありません。
今回の Firefox の場合、クエリは初期設定の場合 Cloudflare に飛んでいくことになるので、Cloudflare にはユーザーがどのサイトに接続しようとしているのかが丸見えであることに注意が必要です。
Mozilla、「Firefox」の“DNS over HTTPS”をデフォルト有効化 ~米国で実施 - 窓の杜
「Firefox」の“DoH”機能は、米国でのみ既定で有効。米国外のユーザーも、オプション画面(about:preferences)の[一般]セクション最下部にあるネットワーク設定へアクセスし、[DNS over HTTPS を有効にする]というオプションを有効化すれば利用できる。初期設定のプロバイダーは“Cloudflare”になっているが、“NextDNS”などを指定することも可能だ。
gem mysql から mysql2 に移行してみる
ruby
mysql 昔書いた Ruby のプログラムを CentOS 7 上で動かそうとしたのですが、MariaDB が 10.4 と比較的新しいバージョンだったので gem で mysql がインストールできないので困ってしまいました。
mysqlを見ると、最終アップデート日が 2013 年になっていて、最近はメンテナンスされていないようです。このまま粘っても解決の見込みも立たないので、mysql2 に移行してしまうことにしました。
† ソースの書き換えは大きく3箇所
基本的には以下の3箇所を変更してやれば、基本的な動作はするようです。
Date などの部分を自動的に cast する機能がついたようですが、これは :cast => false でオフにしてあります。
Mailvelope でウェブメールでも PGP
firefox
chrome
pgp Mailvelope というブラウザ上で PGP 暗号化/復号化ができるアドオンを見つけたのでメモ。
中身は OpenPGP.jsを使って作られているようです。
GnuPG から鍵を Export して使ってみたところ、Outlook Web 上暗号化されたメッセージが復号できました。
ただ、送信時は PGP Inline 形式になるので、日本語を含んだメッセージを署名だけしようとすると検証できなくなるという問題があります。
The browser extension Mailvelope provides end-to-end encryption for your existing email address. Encrypt your mails without having to change your email provider! Encryption and decryption takes place exclusively on the end devices. This means that your private data will never leave your device unencrypted.
Firefox や Chrome のプラグインは以下から導入が可能です。
CentOS 7 + MariaDB の組み合わせで gem mysql2 がエラーになるときは
ruby
centos7
mysql CentOS 7 に MariaDB をインストールして、Ruby の gem mysql2 実行したらエラーになってしまって困ってしまいました。
エラーメッセージを読む限りリンカのエラーのようなので、もう一度良く MariaDB のインストールを確認したら MariaDB-shared が入っていないのが原因だったようで、以下のコマンド1行で解決でした。MariaDB-devel だけでいけると思っていたのが、勘違いでしたね。
† CentOS 7 への MariaDB のインストール
ハマらないように次回からは以下のような感じでインストールすることにしようと思います。
Twitter を旧バージョンに戻すアドオン
firefox
chrome Twitter はウェブの UI が大幅な変更が行なわれましたが、これを元に戻してしまうアドオンが公開されてたのでメモ。
最近のウェブがスマホ重視なのはしょうがないのですが、PC で見ると余白が大きくなりすぎてしまって使い辛いんですよね。
PC版Twitterの新デザインに戸惑う人に朗報 インストールするだけで旧式に戻せるブラウザ拡張が登場 - ねとらぼ
使い方は各バージョンのページを開き、「Chromeに追加」や「Add to Firefox」をクリックし適用するだけ。導入以降にTwitterを開くと、自動的に旧デザインで表示されます。
MariaDB を 10.3 にしようとしたら「A manual upgrade is required.」と言われたので・・・
mysql 先日、CentOS 7 の MariaDB を 10.3 にアップデートした話を書きましたが、10.1 → 10.3 の場合は 「A manual upgrade is required. 」と言われてしまうことが分かりました。
ちょうど yum でアップデートしようとすると、以下のようなエラーが出ます。
† 仕方がないのでマニュアルでアップデート
マニュアルでアップデートと言っても、やることは一旦アンインストールしてから、再インストールするだけです。
とりあえずエラーメッセージに従って、非互換な部分について確認します。
やはり主な問題は sql_mode の部分でしょうか。
- Upgrading from MariaDB 10.2 to MariaDB 10.3 - MariaDB Knowledge BaseUpgrading from MariaDB 10.1 to MariaDB 10.2 - MariaDB Knowledge Base
ちなみに yum remove しても /var/lib/mysql の下のデータファイルは消えませんが、念のため全データのダンプは取っておきます。
.conf は .rpmsave にリネームされてしまうので、特別な設定を入れている場合にはファイルを復元しておきます。
具体的には以下のような感じでしょうか。
CORS エラーを無理やり回避する
firefox AJAX を利用するウェブサイトを使っていると、たまに CORS に関するエラー*1に遭遇して動かないことがありますが、これは基本的に開発者が対処すべき問題*2なので、利用者としては利用をあきらめるくらいしかできないので困っていましたが、Allow CORS というアドオンを使うとこのエラーを無理やり回避できることが分かったのでメモ。
これを常用するのは危険ですが、どうしても利用したいサイトがある場合には有効な打開策になります。
Allow CORS: Access-Control-Allow-Origin – 🦊 Firefox (ja) 向け拡張機能を入手
Simply activate the add-on and perform the request. CORS or Cross Origin Resource Sharing is blocked in modern browsers by default (in JavaScript APIs). Installing this add-on will allow you to unblock this feature. Please note that, when the add-on is added to your browser, it is in-active by default (toolbar icon is grey C letter). If you want to activate the add-on, please press on the toolbar icon once. The icon will turn to orange C letter.
- *1: CORS のエラー - HTTP | MDN
- *2: Origin null is not allowed by Access-Control-Allow-Origin. というエラーが出るときは
- sadpkv
- CACHEMANAGER.phpというのはどうだろうかと
- pairb1m
- Lightning のToDoリストを複数のPCで共有できるアドオン
- majodca
- 九州旅行から帰ってきました
- majodca
- 九州旅行から帰ってきました
- hot534
- yum を使って OpenVPN をインストールする
- dresssu3
- NP_Trackbackを騙るトラックバックspamについて
- zippern7o
- NP_SpamBayesJP jp1b
- park81o
- Google Docs をメールフォームとして使う
- fogmpl
- なんで官庁の文章はPDFなんだろうか
- cutjw9
- 即席スライドショーを作る
- frightenlho
- 添付ファイルの容量を表示する「Attachment Sizes」
2 . 福岡銀がデマの投稿者への刑事告訴を検討中(5057)
3 . GitHub が全ての公開リポジトリへのシークレットスキャンを有効に(4193)
4 . 年次の人間ドックへ(4123)
5 . 2023 年分の確定申告完了!(1つめ)(3980)
Academic[574]
Book[155]
Diary[522]
Disaster[101]
Foodlogue[1425]
Game[284]
Goods[805]
Healthcare[341]
Hobby[32]
IT[1195]
Military[343]
misc.[1570]
Mobile[510]
Music[38]
Neta[106]
News[95]
Photo[391]
RealEstate[120]
Security[1178]
SEO Contest[36]
Software[634]
Tips[1886]
Travelogue[1238]
Web[675]
Work[193]

