Я пытаюсь понять, как установить лимит дискового пространства для пользователей в MySQL. Я хочу, например, чтобы администратор назначил 1 ГБ дискового пространства для пользователя A, если A использовал 1 ГБ дискового пространства, 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-файл, который я использую для этого:
mysqld --skip-ndbcluster --user=mysql --skip-grant-tables --basedir=/usr --datadir=${DATADIR} --skip-innodb --skip-bdb --skip-networking --max_allowed_packet=8M --net_buffer_length=16K --socket=${sockfile} --pid-file=${pidfile} &>/dev/null