アーカイブ「2025年06月」

今月はがんばりました。

0.8.5をリリースしました。

https://github.com/shigenobu/ebonyrack/releases

MariaDBと謳っていますが、MySQLも可能なので、フリーのER図作成ツールとして、

少しでも、世の中で使ってもらいたいなと感じる出来になってきたかなと思っています。

とはいえ、マニュアルも古いので書き換えないとですね。。

0.8.1〜0.8.5の変更内容は以下のとおりです。

なお、0.8.5で、ローカルのSQLITEの一部の型を変更したので、

旧バージョンでJSONをWRITEしてから、新バージョンでJSONをREADしてもらえればと思います。


検索ボックスを画面の左下に出すようにしました。

enterで次へ、shift+enterで前へ、なども対応しています。

フォーカスの遷移は、単語ごとではなく、オブジェクトごとになってます。

合わせてサイドのスライダーも連動するようになってます。

個人的には結構いい感じかなと満足の出来です。

ALTER TABLEによる外部キーのIMPORTに対応し、

さらにCREATE TABLEに含まれる外部キーのIMPORTにも対応しました。

かなり厄介でした。。

ebonyrackの仕様として、外部キー同士の型が一致していないとダメとしているのですが、

それはIMPORTにも適用させていただきました。

タイトルの通り、一括で位置と色を調整できるようしました。

例によって、エクセルからの貼り付け対応ですね。(正確にはタブ区切り)

上記以外にも、

フォーカスがあたっているオブジェクトにenter押下で編集画面を上げるようにしたり、

ちょこちょこ使い勝手の修正をいれてます。

そして、やるやる言ってた外部キーと検索ができたので、

改めて次の課題を備忘録的に書いておきます。

  • VIEW/FUNCTION/TRIGGER/PROCEDURE
  • テストデータ生成
  • IMPORT時の自動配置調整
  • パフォーマンス調整

JAVA21用にも書き換えないとですね。

1.0.0も近づいてきたので(特に意味はないですが)、頑張ろうかと思います。

以上

投稿日時:2025年06月27日 22:53   カテゴリー:java, mariadb   [コメントがあればどうぞ]

MariaDB 11.8 が今月GAリリースされました。

https://mariadb.com/docs/release-notes/mariadb-community-server-release-notes/mariadb-11-8-series/what-is-mariadb-118

今回はLTSなので、2028年6月までの長期サポートとなります。

公式を見ていただければわかりますが、流行りのVECTOR型とか色々入ってます。

基本的には、STSである11.5〜11.7の変更がそのまま取り入れられている感じですね。

いろいろ、見返してみると、MariaDBは10.0の時代から、

DELETE〜RETURNING

があったんですね。。初めて知りました。

https://mariadb.com/docs/server/reference/sql-statements/data-manipulation/changing-deleting-data/delete

RETURNINGは、

  • INSERT RETURNING
  • REPLACE RETURNING
  • DELETE RETURNING

ってことで、3つあるようです。

REPLACEはちょっと色々あるのであんまり使わないですが、

DELETE RETURNINGはデータの退避とかにも使えそうですね。


で、自分のつくっているmagentadeskもv0.8.0でMariaDB 11.8に対応しました。

https://github.com/shigenobu/magentadesk

※すいません、VECTOR型は未対応です。。

MySQLも8.4系をサポートしようと思ったのですが、

magentadeskが差分検出時に行うクエリーで以下のようなエラーが出るようになりました。

[ERROR] [MY-010211] [Server] Got error 124 when reading table '/tmp/#sql1_10_5e'

8.0.42などの8.0系ではでないのですが、8.4から急に出るようになりました。

原因は今の所不明です。。

なにかわかったらまたブログに書こうかなと。

とりあえず、今回は以上。

投稿日時:2025年06月27日 22:31   カテゴリー:mariadb   [コメントがあればどうぞ]

EOLを迎えて1年立ちましたが、未だにcentos7は使われているはず。

valutがアーカイブレポジトリを提供しており、これを使えばまだしばらくは大丈夫なはず。

(参考)

https://qiita.com/ragi/items/9225f307ea3b38ba1fa6

とはいえ、アリババもレポジトリを提供していたりします。

https://developer.aliyun.com/mirror/centos

上記を参考に、centos7の場合は、

# mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
# wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

てな感じで、レポジトリを上書きできます。

ただ、baseurl記載の

  • mirrors.aliyuncs.com
  • mirrors.cloud.aliyuncs.com

がアクセスできないことがあるので、この2行は削除しておくといいかもしれません。

あとは、

# yum clean all

してから、色々操作ができるはず。

古いサーバにどうしても追加モジュールを入れる必要があり、

このような方法を取ったことがあったので、記載しておきます。

valutもそうですが、アリババのレポジトリもいつまで生きているかわからないので、

なるべく早くOS移行をしましょう。

以上

投稿日時:2025年06月10日 23:01   カテゴリー:centos   [コメントがあればどうぞ]

しばらくぶりの投稿となってしまいました。。

ebonyrack の 0.8.0 をリリースしました。

https://github.com/shigenobu/ebonyrack/releases

0.7.1 – 0.8.0 での主な変更点は以下となります。

なお、0.7.2 でローカルデータベースの変更が入っているので、

旧バージョンでJSONにWriteしてから、新バージョンでJSONをReadしてください。


外部キーの参照される側のカラム(親テーブルのカラムといったほうがいいか)は、

主キーもしくはユニークキーであるようにしました。

もともと外部キーというのはそういうものですが、MySQL系はこの制約が緩く、

要はなんでもOKだったのです。

しかし、MySQL8.4から上記のように参照される側のカラムについて厳格になったので、

それに合わせた修正を行いました。

(※今まで緩すぎたのです。本来はこう有るべきなのです。)

アウトライン(左側の小さい画面)の描画回数が大きく、

CPU使用率が高かったので、500ミリ秒間は再描画しないようにしました。

また、オブジェクトを移動する際、マウスを押してから離す時間が長いと、

(0,0) に移動してしまう不具合があったので、修正しています。

DDLとクラスファイル出力時に、

出力条件(対象テーブルの設定とか、ファイルをどこに出力するか)を一定数保持して、

その条件を再度利用できるようしました。

何度もエクスポートしていると、条件を毎回入力しないといけないので、

この煩わしさのために対応しました。

実際に、プログラムファイルを出力することが多く、

対象テーブルの絞り込みやスキーマなどの出力条件を再利用できる形になって楽になりました。


やるやるいっている、検索の修正、VIEWの対応、外部キーパースなどは全く手を付けていないです。

ebonyrackは実案件でも使っているのですが、VIEWとか、外部キーパースは使わないですよね。。

というわけで、実際に使っているうちに遭遇した不具合とか、不都合の修正を行っていました。

そろそろ、JAVA21にしようかなというフェーズに来ています。

1.0.0 には21にしたいかなと。。

以上

投稿日時:2025年06月10日 22:20   カテゴリー:java, mariadb   [コメントがあればどうぞ]