一开始建了个数据库 ftp,里面有张表 user,root 授权 用户 vhost 可以查询这张表.
GRANT select ON ftp.user TO 'vhost'@'localhost' identified by PASSWORD('xx');刷新授权flush privileges;测试ok.然后 我在phpmyadmin 里面删掉了这个数据库.drop database ftp;好像系统提示 什么授权不会被删除....(没注意看)之后,我重建了这个数据库,新建了两个表 user,log.可是问题出现了当我再次授权 vhost 可以去查询 这个两张表时候,发现vhost 只能查user表了,刷新重读授权都没用了。
GRANT select ON ftp.* TO 'vhost'@'localhost' identified by PASSWORD('xx');最后,我重启了mysql.
./mysqladmin -u root -p shutdown不过还是没用。已vhost 登录
./mysql -u vhost -p --default-character=latin1
不过use ftp;
show tables;还是只能看到user表。我哭了。。硬查询就报 Access Denied...有人知道 这是什么原因吗???哦,对了,我用的是 mysql 5.4.3-beta 源码自编译安装版本.
GRANT select ON ftp.user TO 'vhost'@'localhost' identified by PASSWORD('xx');刷新授权flush privileges;测试ok.然后 我在phpmyadmin 里面删掉了这个数据库.drop database ftp;好像系统提示 什么授权不会被删除....(没注意看)之后,我重建了这个数据库,新建了两个表 user,log.可是问题出现了当我再次授权 vhost 可以去查询 这个两张表时候,发现vhost 只能查user表了,刷新重读授权都没用了。
GRANT select ON ftp.* TO 'vhost'@'localhost' identified by PASSWORD('xx');最后,我重启了mysql.
./mysqladmin -u root -p shutdown不过还是没用。已vhost 登录
./mysql -u vhost -p --default-character=latin1
不过use ftp;
show tables;还是只能看到user表。我哭了。。硬查询就报 Access Denied...有人知道 这是什么原因吗???哦,对了,我用的是 mysql 5.4.3-beta 源码自编译安装版本.
解决方案 »
- MySQL5.5服务无法启动啊 高手进来解决啊
- mysql存储过程的错误
- 关于:c语言调用mysqlAPI执行存储过程发生错误:select Commands out of sync
- mysql 查詢問題
- 如何释放mysql表删除大量纪录后的磁盘空间?求教!
- 有谁有如何在RED HAT上面安装和使用MySQL的资料?
- PostgreSQL GUI
- 数据库查询
- MyBatis 批处理 在本地可以操作批处理 但是在服务器上 没插入一条数据 创建一个sqlsession 是怎么回事
- (急)mysql 5.7.18 占用内存持续增加,并且占用了就不释放
- 急求一条查询语句
- 如何根据SHOW VARIABLES/SHOW STATUS了解服务器运行状态,发现问题并作出相应调整?
猜不出。如果有用户说它的权限不足。
首先,我们会 SHOW GRANTS FOR username
来检查,看了之后再做下一步分析。如果这一步都不做,那就是直接闭着眼睛猜了。把几十种,甚至几百种可能的原因一个一个问过来太浪费时间了。不是处理问题的科学方法。 比如,有人问为什么电灯不这。做为专业的工程师,显然你要做的事是去量电压,而不是猜是开关?是灯泡?还是线路?。等原因。
再DROP试试
[SQL]
mysql> show grants for 'vhost'@'localhost';
+------------------------------------------------------------------------------- -------------------------------+
| Grants for vhost@localhost |
+------------------------------------------------------------------------------- -------------------------------+
| GRANT USAGE ON *.* TO 'vhost'@'localhost' IDENTIFIED BY PASSWORD '*653E55BC343 28FD9504096B9DFB2434DE24AAE86' |
| GRANT SELECT ON `vsftpd`.`users` TO 'vhost'@'localhost' |
+------------------------------------------------------------------------------- -------------------------------+
2 rows in set (0.01 sec)
[/SQL]
grant all on *.* to 'vhost'@'localhost' identified by PASSWORD('xx');
因为你的用户已经建立了。如果你是在mysql命令行工具中应该就容易看到了
GRANT ALL ON ftp.* TO 'vhost'@'localhost';
mysql> grant all on vsftpd.* to 'vhost'@'127.0.0.1';
Query OK, 0 rows affected (0.00 sec)mysql> show grants for 'vhost'@'localhost';
+--------------------------------------------------------------------------------------------------------------+
| Grants for vhost@localhost |
+--------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'vhost'@'localhost' IDENTIFIED BY PASSWORD '*653E55BC34328FD9504096B9DFB2434DE24AAE86' |
| GRANT SELECT ON `vsftpd`.`users` TO 'vhost'@'localhost' |
+--------------------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)
-> ;
+--------------------------------------------------------------------------------------------------------------+
| Grants for [email protected] |
+--------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'vhost'@'127.0.0.1' IDENTIFIED BY PASSWORD '*653E55BC34328FD9504096B9DFB2434DE24AAE86' |
| GRANT ALL PRIVILEGES ON `vsftpd`.* TO 'vhost'@'127.0.0.1' |
| GRANT SELECT, INSERT ON `vsftpd`.`t1` TO 'vhost'@'127.0.0.1' |
| GRANT SELECT, INSERT ON `vsftpd`.`logs` TO 'vhost'@'127.0.0.1' |
| GRANT SELECT ON `vsftpd`.`users` TO 'vhost'@'127.0.0.1' |
+--------------------------------------------------------------------------------------------------------------+
5 rows in set (0.00 sec)mysql> show grants for 'vhost'@'localhost'
-> ;
+--------------------------------------------------------------------------------------------------------------+
| Grants for vhost@localhost |
+--------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'vhost'@'localhost' IDENTIFIED BY PASSWORD '*653E55BC34328FD9504096B9DFB2434DE24AAE86' |
| GRANT ALL PRIVILEGES ON `vsftpd`.* TO 'vhost'@'localhost' |
| GRANT SELECT ON `vsftpd`.`users` TO 'vhost'@'localhost' |
+--------------------------------------------------------------------------------------------------------------+
3 rows in set (0.00 sec)
正确权限如下:
mysql> show grants for 'vhost'@'localhost';
+--------------------------------------------------------------------------------------------------------------+
| Grants for vhost@localhost |
+--------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'vhost'@'localhost' IDENTIFIED BY PASSWORD '*653E55BC34328FD9504096B9DFB2434DE24AAE86' |
| GRANT INSERT ON `vsftpd`.`logs` TO 'vhost'@'localhost' |
| GRANT SELECT ON `vsftpd`.`users` TO 'vhost'@'localhost' |
+--------------------------------------------------------------------------------------------------------------+
3 rows in set (0.00 sec)mysql> show grants for 'vhost'@'127.0.0.1';
+--------------------------------------------------------------------------------------------------------------+
| Grants for [email protected] |
+--------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'vhost'@'127.0.0.1' IDENTIFIED BY PASSWORD '*653E55BC34328FD9504096B9DFB2434DE24AAE86' |
| GRANT SELECT ON `vsftpd`.`users` TO 'vhost'@'127.0.0.1' |
| GRANT INSERT ON `vsftpd`.`logs` TO 'vhost'@'127.0.0.1' |
+--------------------------------------------------------------------------------------------------------------+
3 rows in set (0.00 sec)