質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.31%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

意見交換

クローズ

2回答

1243閲覧

MySQLのメモリ使用量が増加していて、原因を知りたい。

user1234

総合スコア0

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

0グッド

0クリップ

投稿2023/11/27 01:44

0

0

実現したいこと

InnoDB Clusterを使ったMySQLのGroup Replicationで徐々にメモリ使用量が増加していて、原因を知りたい。

前提

Azure上に建てたサーバ3台にMySQL Serverをインストールして、シングルプライマリーモードでグループレプリケーションを作成しました。
下記のサイトなどを参考にして、グループレプリケーションの作成自体は無事完了して、MySQL Routerを通して他サーバからのレプリケーションへのアクセスやその他検証を行なっていました。
グループレプリケーションを作成する際に参考にしたサイト
(https://kazuhira-r.hatenablog.com/entry/2019/08/31/012059)

サーバの性能
OS Ubuntu 20.04.6 LTS
メモリ 4GB
mysql Ver 8.0.35-0ubuntu0.20.04.1 for Linux on x86_64 ((Ubuntu))

発生している問題

CRUD操作をしなくても時間経過で徐々にMySQLのメモリ使用量が増加していている。
グループレプリケーション作成直後では、MySQLのメモリ使用量は800MBほどで、5日後には2.6GBほどに増加している。
2.6GBになると増加が停止して安定しているように見える。

試したこと

・innodb_buffer_pool_sizeやInnodb_log_file_sizeなどを変更して様子を見る。
→違いなし

知りたいこと

・時間経過でメモリ使用量が増加する挙動が正常なのか?
・具体的に何にメモリが利用されているのか?
・メモリの増加量を操作することができるのか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

回答2

#1

ikedas

総合スコア4443

投稿2023/11/27 08:51

「メモリ使用量」というのはどうやって得られる数値のことでしょうか。その値を得る方法と、「増加している」と判断した理由を、実際の数値も添えて示してください。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

#2

user1234

総合スコア0

投稿2023/11/27 10:10

回答ありがとうございます。
2つの方法でメモリ使用量を観測していました。
一つ目は、systemctl status mysqlで表記されたMemoryの数値を確認していました。
レプリケーションを組んだ直後は700~800M程で、1週間たった今では以下のように2.6Gとなっていました。
(1週間の間でも日に数回、変化を確認していました。)

mysql.service - MySQL Community Server Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2023-11-20 17:45:40 JST; 1 weeks 0 days ago Main PID: 222246 (mysqld) Status: "Server is operational" Tasks: 63 (limit: 4625) Memory: 2.6G CGroup: /system.slice/mysql.service └─222246 /usr/sbin/mysqld

2つ目の方法ですが、free -mを叩くshellを用意し、cronで毎分実行して、結果をファイルに保存していました。
systemctl status mysqlの結果に合わせて、usedの部分が日に日に増加しているのを観測していました。

total used free shared buff/cache available 2023/11/20 12:49:01 Mem: 3863 803 1892 3 1167 2807 2023/11/20 12:50:01 Mem: 3863 804 1891 3 1167 2806 2023/11/20 12:51:01 Mem: 3863 824 1871 3 1167 2786 2023/11/20 12:52:01 Mem: 3863 847 1847 3 1167 2763 2023/11/20 12:53:01 Mem: 3863 848 1847 3 1167 2762 ~~省略~~ 2023/11/27 18:56:01 Mem: 3863 2758 129 3 976 851 2023/11/27 18:57:01 Mem: 3863 2759 127 3 976 849 2023/11/27 18:58:01 Mem: 3863 2760 126 3 976 848 2023/11/27 18:59:01 Mem: 3863 2761 125 3 976 847 2023/11/27 19:00:01 Mem: 3863 2785 112 3 965 823

他にもほしい情報などございましたら、記載できる範囲でお答えいたします。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

最新の回答から1ヶ月経過したため この意見交換はクローズされました

意見をやりとりしたい話題がある場合は質問してみましょう!

質問する

関連した質問