

造成原因:
1、root密码不被ecs root帐号识别
2、root帐号里面的没有localhost 用户。。。
解决方法
#vim /etc/my.cnf(注:windows下修改的是my.ini)
在文档内搜索mysqld定位到[mysqld]文本段: /mysqld(在vim编辑状态下直接输入该命令可搜索文本内容)
在[mysqld]字段中
最下面一行添加“skip-grant-tables”用来跳过密码验证的过程,如下图所示:

保存文档并退出
2.接下来我们需要重启MySQL:
/etc/init.d/mysql restart(有些用户可能需要使用/etc/init.d/mysqld restart)

3.重启之后输入mysql即可进入mysql。先修改密码到你的密码
mysql> update user set password=password("你的新密码") where user="root"; mysql> flush privileges; mysql> quit
重新载入权限
FLUSH PRIVILEGES;选择系统数据库mysql
use mysql;查询系统表user中的用户
select host,user,authentication_string from user;7.向root用户赋值权限
GRANT USAGE ON *.* TO 'root'@'localhost' IDENTIFIED BY '你的新密码' WITH GRANT OPTION;exit
并删除刚才跳过权限密码的东西
#vim /etc/my.cnf(注:windows下修改的是my.ini)
在文档内搜索mysqld定位到[mysqld]文本段: /mysqld(在vim编辑状态下直接输入该命令可搜索文本内容)
在[mysqld]字段中
删除“skip-grant-tables”用来跳过密码验证的过程

done
不是20b了 3.92kb也像是唬人一样。。进入phpadmin发现都没权限看表。。我tm囊死我自己
该问题是因为root没有select权限引起的。
解决:赋予root权限
1.首先停止MySQL服务:service mysqld stop 2.加参数启动mysql:/usr/bin/mysqld_safe --skip-grant-tables & 然后就可以无任何限制的访问mysql了 3.root用户登陆系统:mysql -u root -p mysql 4.切换数据库:use mysql 5.显示所有的表:show tables; 这里就可以访问表了 6.查看user表中root用户的localhost权限:select * from user where user='root' and host='localhost' 7.在显示的列表中显示:root用户的localhost的权限都是'N',表示root用户本地登陆不具有权限 8.修改root用户的localhost权限: update user set `Select_priv` = 'Y', `Insert_priv` = 'Y', `Update_priv` = 'Y', `Delete_priv` = 'Y', `Create_priv` = 'Y', `Drop_priv` = 'Y', `Reload_priv` = 'Y', `Shutdown_priv` = 'Y', `Process_priv` = 'Y', `File_priv` = 'Y', `Grant_priv` = 'Y', `References_priv` = 'Y', `Index_priv` = 'Y', `Alter_priv` = 'Y', `Show_db_priv` = 'Y', `Super_priv` = 'Y', `Create_tmp_table_priv` = 'Y', `Lock_tables_priv` = 'Y', `Execute_priv` = 'Y', `Repl_slave_priv` = 'Y', `Repl_client_priv` = 'Y', `Create_view_priv` = 'Y', `Show_view_priv` = 'Y', `Create_routine_priv` = 'Y', `Alter_routine_priv` = 'Y', `Create_user_priv` = 'Y', `Event_priv` = 'Y', `Trigger_priv` = 'Y', `Create_tablespace_priv` = 'Y' where user='root' and host='localhost';
-------在输入命令进行操作时报错,把 `Create_tablespace_priv` = 'Y'去掉解决 不报错可以不去 9.更新一下:flush privileges; 10.然后重新启动下mysql,可以解决问题了service mysqld star

real done
