Prevent running out of disk space with MySQL

But it should not grow to use all available disk space (according to the documentation), unless there is a bug somewhere or there are temporary tables created, that are that large. That space is used by mysql also for internal temporary tables. https://dev.mysql.com/doc/refman/8.0/en/internal-temporary-tables.html. I guess, that it is possible, that such tables could remain around in case of long-running transactions/connections.

You are correct, its not suppose to.

But seeing how it was a fresh install of ubuntu server 16.04 with only tt-rss + a hand full of plugins installed.

Something related to tt-rss made it grow, hence why I suggest capping the temp files.

10GB is excessive but I dont know how much was needed, seems to be sitting around 6GB for me for the past 2 months

More interesting is, how many feeds are you subscribed to? (my psql database is btw < 1GB and I have quite a few feeds, so I’m interested how your temp file is growing that large)

I never used Mysql as I prefer the foss version MariaDB, but this really is no problem of tt-rss (and most likely not intended by the developers of Mysql).
Drawing an analogy, you are also not provided with a driving license if you are buying a car. So this does not belong to the installation guide and might confuse some people installing with MariaDB or PostgreSQL.

only 51, deleted a few when it first happened and never re-added them

MySQL version 8 is neither in 16.04 nor 18.04 in the ubuntu main repository.
Do you really use something like MySQL from the universe repo in a server installation ???
Perhaps you should read the support guidlines for the universe repository and think about your decition of your software usage.

My ttrss-inst runs on Lubuntu 18.04LTS with mysql-5.7 and php-7.2. I have 177 subscriptions in 20 categories.

mysql mysql 6.9K Aug 27 19:26 ib_buffer_pool
mysql mysql 138M Sep 6 12:39 ibdata1
mysql mysql 48M Sep 6 12:39 ib_logfile0
mysql mysql 48M Sep 6 12:39 ib_logfile1
mysql mysql 76M Sep 6 12:39 ibtmp1

That was just a link to MySQL man page referencing how Innodb works.

We are actually running the save version

-rw-r----- 1 mysql mysql 17K Aug 28 10:29 ./ib_buffer_pool
-rw-r----- 1 mysql mysql 76M Sep 6 07:26 ./ibdata1
-rw-r----- 1 mysql mysql 48M Sep 6 07:26 ./ib_logfile0
-rw-r----- 1 mysql mysql 48M Sep 6 07:24 ./ib_logfile1
-rw-r----- 1 mysql mysql 6.7G Sep 6 07:25 ./ibtmp1

As someone who has been running TT-RSS for years with MySQL and over 300+ feeds, together with several other services on a single VPS all using MySQL for databases with InnoDB tables very actively, and disk usage monitoring set on my mysql directories I can contribute the following information:

  • I’m currently running the same MySQL server version
  • My ibtmp file never grew larger than 76MB according to my disk usage reports

As a professional I feel I should point out that:

  • if you’re setting a max size of 10G for it while it has been growing to 40G, all queries that are either explicit or internal temp table will fail once the need to go over 10G is reached, which usually renders the application in an unusable state due to unexpected database errors
  • internal innodb temp tables will grow the file only if the available memory and/or buffer sizes are not adequately available / configured, which tells me the correlation with your PHP memory errors does not necessarily imply causation
  • MySQL’s logging features are your friend

Also @jeremyrem, what TT-RSS version are you running and which plugins (since you’ve explicitly mentioned it) ? For all I know you’ve got some custom plugin running that’s solely responsible for all your troubles.

I didn’t find a solution on this forum regarding huge disk usage by ttrss mysql db, so I hope this will help:

mysq -u root

alter table ttrss.ttrss_entries force;

got it from here