MySQL consumes memory for each portion of read
MySQL has several "caches".  Some of them grow as needed up to a pre-determined limit.  This probably explains (at a high level) what you are seeing.

A well-tuned MySQL-only server will consume nearly all of RAM, then sit there quite happy.

Do you have other applications running on the same server?  If so, you need to tune MySQL not to reach for filling up the server.

If you want to discuss tuning, please prove the amount of available RAM (after accounting for other processes), plus the my.cnf settings.