| Cuotas en Mysql: Limitar el espacio de almacenamiento para bases de datos mysql | ||
|---|---|---|
| Anterior | ||
Realmente el proceso es el mismo, en este caso o vamos a describir mediante un script que toma como argumentos el nombre de la base de datos y el nombre del grupo y realiza todo el proceso.
#!/bin/bash
# comprobamos una llamada correcta
if [ $# -ne 3 ]
then
echo "Uso $0 basedatos grupo
exit
fi
# comprobamos que el grupo existe
if ! grep "$2:" /etc/group >/dev/null
then
echo "el grupo no existe"
# groupadd $2 también podríamos haber creado el grupo aquí
exit
fi
# creamos la base de datos
mysqladmin -u root create $1
# comprobamos si la operación ha sido correcta
if [ $? -eq 1 ]
then
echo "No he podido crear la base de datos $1"
exit
fi
# le asignamos el grupo al directorio de la base de datos
chgrp $2 /var/lib/mysql/$1
# asignamos el bit SGID al directorio de la base de datos
chmod +s /var/lib/mysql/$1
# le asignaamos al grupo las mismas quotas que el usuario prototipobd
edquota -p prototipobd -g $2
|
Y con esto se supone que hemos creado una base de datos con limitación de espacio de almacenamiento por quotas.