この連載はOSSコンソーシアム データベース部会のメンバーがオープンソースデータベースの毎月の出来事をお伝えしています。今回から連載開始後10年目に入りました。引き続きご愛読をよろしくお願いいたします。
[MySQL]2024年8月の主な出来事 
8月はMySQLのバージョンアップはありませんでした。8月7日よりMySQLのクラウドサービスであるHeatWave MySQLが、期間の制限なく無料で利用できるOCIのAlways Freeクラウド・
- MySQLのイノベーション・
リリースのみ利用可能  - ストレージサイズは50GB固定
 - HeatWave AutoMLおよびHeatWave Lakehouseは利用可能、HeatWave GenAIは未サポート
 - インバウンドおよびアウトバウンド・
レプリケーションは利用可能  - 高可用性構成およびリード・
レプリカは利用不可  
MySQLのJavaScriptでのストアド・プログラム 
MySQLでは、MySQL 5.
MySQL 9.
ストアド・
mysql> CREATE FUNCTION gcd(a INT, b INT)
    -> RETURNS INT NO SQL LANGUAGE JAVASCRIPT AS
    -> $mle$ 
    $>   let x = Math.abs(a) 
    $>   let y = Math.abs(b) 
    $>   while(y) { 
    $>     var t = y
    $>     y = x % y
    $>     x = t 
    $>   } 
    $>   return x 
    $> $mle$ 
    -> ;
Query OK, 0 rows affected (0.01 sec)
上図の2行目にLANGUAGE JAVASCRIPTと書かれているとおり、このストアド・$mle$以降がJavaScriptとなっています。
作成したストアド・
mysql> SELECT gcd(75, 220), gcd(75, 225); +--------------+--------------+ | gcd(75, 220) | gcd(75, 225) | +--------------+--------------+ | 5 | 75 | +--------------+--------------+ 1 row in set (0.00 sec)
リファレンスマニュアルには他のサンプルも掲載されています。
さらにJavaScript SQL APIが用意されているため、ストアド・
主な制限事項は下記の通りです。
- Globalオブジェクトはサポートされているが、スコープは各ストアド・
プログラム内に限定される  - ファイルやネットワークへのアクセスは不可
 - サードパーティのライブラリのインポートは不可
 - シングルスレッドでの処理
 - 関数の再帰呼び出しは1,000回まで
 
JavaScriptを用いたストアド・INSTALL COMPONENT "file://コマンドでのインストールが必要です。
[PostgreSQL]2024年8月の主な出来事 
今回はリリースのお知らせが中心です。前回に続いて次期メジャーバージョン17の新しいベータ版がリリースされ、既存のサポート中バージョンの更新版もリリースされました。また、私たちの注目株
PostgreSQL 17ベータ3
6月末のベータ2に続き、8月8日にはベータ3がリリースされました。今回のベータ3リリースにより、第3四半期末に予定されている正式リリース
前回のベータ2からの修正項目は次のとおりです。
- standby_
slot_ namesパラメータの名前をsynchronized_ standby_ slotsに変更  - いくつかのSQL/
JSONの修正  pg_の修正combinebackup --clone - pg_
createsubscriberの複数の修正  - pg_
upgrade中にサブスクリプション情報を取得する際の効率を向上  - 起動プロセス中にサーバーがエラーを送信した場合にsslmode=preferのTLSフォールバック動作がエラーになる問題を修正
 - pg_
basebackup増分バックアップを前回のバックアップの直後にスタンバイサーバ上で実行した場合のエラーケースを文書化  pg_でのバックエンドでのRAM使用量が1桁多い可能性がある問題を修正upgrade --transaction-size 
既存PostgreSQLのアップデート
前述のベータ3と同じタイミングで、サポート中の全メジャーバージョンを対象にしたマイナーバージョンもリリースされました。
今回のリリースには1件のセキュリティ脆弱性の修正が入っています。
- CVE-2024-7348: pg_
dump中のPostgreSQLリレーション置換で任意のSQLが実行される  - pg_
dumpのTime-of-check Time-of-use (TOCTOU) 競合状態により、オブジェクト作成者は pg_ dumpを実行しているユーザとして任意のSQL関数を実行できます。このユーザは多くの場合スーパーユーザです。この攻撃には、別のリレーションタイプをビューまたは外部テーブルに置き換えることが含まれます。この脆弱性は、バージョン12から16の既存リリースに存在します。  
その他のリリースのお知らせに記された修正項目のいくつかをピックアップします。ここに挙げたもの以外にも50以上の修正項目があります。なお、リリースされたバージョン12~16により修正対象かどうかが異なりますので、詳細はリリースノートなどを参照してください。
- Merge Right Anti Joinプランからの誤った結果を回避
 - VACUUMの無限ループを防止
 ALTER TABLE DETACH ... PARTITION CONCURRENTLY中のパーティションプルーニング設定を修正- CALLステートメントの引数として使用される安定した関数の動作を修正
 
PostgreSQLバージョン12のEOL予告
新たなメジャーバージョンが登場するということは、過去のバージョンが姿を消していくことでもあります。現在サポート対象になっている中で最も古いバージョン12が、2024年11月の更新を最後にしてEOL
劔“Tsurugi”の最新情報 
この連載で経過をお伝えしている劔
〔追記〕:
8月30日に初の正式バージョンであるTsurugi 1.
また、開発チームは劔
2024年8月以降開催予定のセミナーやイベント、ユーザ会の活動
イベントごとに利便性のあるオンライン開催や、従来通りのオンサイト
Open Developers Conference 2024
| 日程 | 2024年9月7日 | 
|---|---|
| 場所 | docomo R&D OPEN LAB ODAIBA | 
| 内容 | 開発者とインフラエンジニアの交流の場として、 | 
| 主催 | オープンソースカンファレンス実行委員会 | 
EDB Postgres AI ワークショップ 〜EDB Postgres AIを使ったRAGの世界を体験!
| 日程 | 2024年9月19日 | 
|---|---|
| 場所 | 赤坂インターシティコンファレンス | 
| 内容 | 最近になり生成AIと共にRAG | 
| 主催 | エンタープライズDB株式会社 | 
データベースセキュリティの基本
| 日程 | 2024年9月19日 | 
|---|---|
| 場所 | オンラインセミナー | 
| 内容 | サイバー攻撃や内部不正が増加する中、データベースのセキュリティがますます重要になっています。本Webinarでは、SQLインジェクションやバッファ・ | 
| 主催 | 日本オラクル株式会社 MySQL Global Business Unit | 
MySQL運用・監視の新時代へ: 最新ツールとOpen Telemetry対応で実現する最適化手法の基本 
| 日程 | 2024年9月26日 | 
|---|---|
| 場所 | オンラインセミナー | 
| 内容 | MySQL Enterprise MonitorのEOLの後の対応方法と最新の運用・ | 
| 主催 | 日本オラクル株式会社 MySQL Global Business Unit | 
MySQLによるデータを守るセキュリティ機能と構築のポイント
| 日程 | 2024年10月8日 | 
|---|---|
| 場所 | オンラインセミナー | 
| 内容 | データベースセキュリティを強化するための具体的な手法とMySQLの強力なセキュリティ機能の活用方法を詳しく解説します。本Webinarでは、SQLインジェクション対策、暗号化設定、ファイアウォールの設定、監査機能の有効化、マスキングの実装など、MySQLのセキュリティ設定を一から学び、ベストプラクティスを習得し、現場で即活用できる具体的なノウハウを提供いたします。 | 
| 主催 | 日本オラクル株式会社 MySQL Global Business Unit | 
PostgreSQL Conference Japan 2024
| 日程 | 2024年12月6日 | 
|---|---|
| 場所 | AP日本橋 | 
| 内容 | 毎年秋に開催されている日本PostgreSQLユーザ会 | 
| 主催 | 日本PostgreSQLユーザ会 |