你可以试试先给一个create权限,然后每次建立好新的数据库时用更改权限给把其他权限加上:
mysql> GRANT ALL PRIVILEGES ON *.* TO monty@localhost
IDENTIFIED BY 'something' WITH GRANT OPTION;
第三个问题你可以用revoke把其他数据库的select权限收回。这样就跟看不到差不多了。
第四个问题我不清楚楼主什么意思
手册中没有关于创建数据库权限的授权,
但在数据库中提出了一个授权方式:预授权
也就是你可以对并不存在的数据库授权。
这样你可以告诉你的用户foo,你可以创建数据库bar1,bar2,bar3.......
mysql>grant all on bar1,bar2,bar3... to foo@'%' identified by 'passsword';