我试图弄清楚如何为 MySQL 中的用户设置磁盘空间限制。我想要的是,例如,管理员为用户 A 分配 1G 磁盘空间,如果 A 用完 1G 磁盘空间,MySQL 将不允许 A 插入任何东西。我google了这个问题,有人提到可以通过使用表空间来解决,但没有提到如何。任何帮助表示赞赏。
我试图弄清楚如何为 MySQL 中的用户设置磁盘空间限制。我想要的是,例如,管理员为用户 A 分配 1G 磁盘空间,如果 A 用完 1G 磁盘空间,MySQL 将不允许 A 插入任何东西。我google了这个问题,有人提到可以通过使用表空间来解决,但没有提到如何。任何帮助表示赞赏。
据我所知,没有原生的 MySQL 磁盘配额支持(并且限制具有硬配额的数据库的磁盘使用量听起来像是灾难的根源)。
您可以使用 MySQL 磁盘使用实用程序 https://dev.mysql.com/doc/mysql-utilities/1.5/en/mysqldiskusage.html报告磁盘使用情况
您可以将 mysql/datadir 放在每个用户主目录示例
/home/user1 或 DATADIR="/var/www/${VHOST}/mysql/datadir" 然后限制每个用户的磁盘空间
同样,每个用户都会有他的 sock 和 pid 文件,我用它来做这样的事情: