Страница 1 из 1
MySQL и ограничение пользователей на создание таблиц
Добавлено: 2011-11-28 20:04:54
lamok
Здравствуйте.
Подскажите каким образом в mysql можно поставить ограничение для пользователя создавать не более 2-х баз данных??
Re: MySQL и ограничение пользователей на создание таблиц
Добавлено: 2011-11-29 12:53:24
skeletor
Это могут только админки управления. Штатными средствами мне кажется, что такого сделать нельзя.
Re: MySQL и ограничение пользователей на создание таблиц
Добавлено: 2011-11-29 18:04:06
Gamerman
Либо через триггеры как-то
Re: MySQL и ограничение пользователей на создание таблиц
Добавлено: 2011-11-29 19:49:42
telo
lamok писал(а):Здравствуйте.
Подскажите каким образом в mysql можно поставить ограничение для пользователя создавать не более 2-х баз данных??
баз или всё-таки таблиц?
если баз -- то создавайте базы самостоятельно, давайте клиентам логин/пароль на базу и всё.
а если именно таблиц -- то (если не ошибаюсь) стандартных средств не существует.
Re: MySQL и ограничение пользователей на создание таблиц
Добавлено: 2011-11-29 20:17:27
FiL
telo писал(а):lamok писал(а):Здравствуйте.
Подскажите каким образом в mysql можно поставить ограничение для пользователя создавать не более 2-х баз данных??
баз или всё-таки таблиц?
если баз -- то создавайте базы самостоятельно, давайте клиентам логин/пароль на базу и всё.
а если именно таблиц -- то (если не ошибаюсь) стандартных средств не существует.
С таблицами можно также. Создать пользователю две таблицы и дать права без CREATE. Но это уже за гранью добра и зла получается.
А вообще две базы - это какое-то странное ограничение. Какая разница сколько баз? Или она одна и пускай все таблицы в одной базе будут. Или пускай их будет сколько угодно, но ограничен общий размер. А две базы - это какие-то странные полумеры.
Re: MySQL и ограничение пользователей на создание таблиц
Добавлено: 2011-11-29 22:08:54
lamok
С таблицами можно также. Создать пользователю две таблицы и дать права без CREATE. Но это уже за гранью добра и зла получается.
А вообще две базы - это какое-то странное ограничение. Какая разница сколько баз? Или она одна и пускай все таблицы в одной базе будут. Или пускай их будет сколько угодно, но ограничен общий размер. А две базы - это какие-то странные полумеры.
Две это как пример;)
Вообщем решено сделать так:
1) создаем пользователя в мускуле, все права в "N"
2) талицы создаем (можем и удалять) через скрипт и проверяем в таблице сколько уже баз данных создано (вот им и ограничиваем)
3) ставим права уже на конкретную базу
Подскажите как получить размер базы и ограничить ее размер?
И как сделать чтобы базы данных (в смысле файлы) создавались в дирректории пользователя?
Re: MySQL и ограничение пользователей на создание таблиц
Добавлено: 2011-11-29 22:28:26
FiL
1. если у пользователя все права N, то базы он создавать не сможет. И считать сколько там тех баз не нужно.
2. если пользователь может создавать таблицы в принципе, то он их создаст и без скрипта. Так что на скрипт я-бы не надеялся.
3. нахрена ограничивать количество баз я так и не понял. Чисто от жадности?
4. в том-же скрипте для создания базы сделайте, чтоб она после создания переносилась куда надо, а на ее месте создавался симлинк.
Re: MySQL и ограничение пользователей на создание таблиц
Добавлено: 2011-11-29 22:34:55
lamok
FiL писал(а):1. если у пользователя все права N, то базы он создавать не сможет. И считать сколько там тех баз не нужно.
2. если пользователь может создавать таблицы в принципе, то он их создаст и без скрипта. Так что на скрипт я-бы не надеялся.
3. нахрена ограничивать количество баз я так и не понял. Чисто от жадности?
4. в том-же скрипте для создания базы сделайте, чтоб она после создания переносилась куда надо, а на ее месте создавался симлинк.
1. он их создавать и не будет их создаст скрипт и пставит права на эту вновь созданную базу в таблице db на чтение вставку и удаление
2. изначально все права пользователя стоят в "N" и устанавливаем права в таблице только на базу данных
3. чтобы не захламлять;)
4. поподробнее немного можно про симлинк и как перенести... (где изначально создается база? путь можете указать?)
Re: MySQL и ограничение пользователей на создание таблиц
Добавлено: 2011-11-29 23:07:50
lamok
можно примет что откуда скопировать и symlink...
Re: MySQL и ограничение пользователей на создание таблиц
Добавлено: 2011-11-30 1:44:44
FiL
lamok писал(а):
1. он их создавать и не будет их создаст скрипт и пставит права на эту вновь созданную базу в таблице db на чтение вставку и удаление
2. изначально все права пользователя стоят в "N" и устанавливаем права в таблице только на базу данных
3. чтобы не захламлять;)
4. поподробнее немного можно про симлинк и как перенести... (где изначально создается база? путь можете указать?)
Если скрипт создает одну базу в момент создания пользователя, то база будет одна. А не две. Об этом я и говорил. Или одна или не важно сколько. А две - это странное ограничение.
Про "захламлять" я не понял. Ну и какая разница, будет 100 баз по одной таблице или 1 база с сотней таблиц? чем одно более захламлено, чем другое?
Изначально база создается в datadir (такая переменная в мускуле). Переносить ее можно куда угодно - это уж как вам захочется. А на старом месте надо оставлять симлинк, чтоб мускул продолжал видеть базу по старому пути.
Re: MySQL и ограничение пользователей на создание таблиц
Добавлено: 2011-11-30 8:45:17
lamok
Если скрипт создает одну базу в момент создания пользователя, то база будет одна. А не две. Об этом я и говорил. Или одна или не важно сколько. А две - это странное ограничение
Не в момент создания пользователя, а когда пользователь зайдет в раздел создания баз данных.
Изначально база создается в datadir (такая переменная в мускуле). Переносить ее можно куда угодно - это уж как вам захочется. А на старом месте надо оставлять симлинк, чтоб мускул продолжал видеть базу по старому пути.
Будет ли безопасен сей метод (если база будет в дирректории ползователя) и не снизиться ли быстродействие?
Re: MySQL и ограничение пользователей на создание таблиц
Добавлено: 2011-11-30 22:59:12
FiL
быстродействию вроде как пофик. А безопасность... ну уж это от прав зависит. Но я не вижу критичных проблем.