如何快速修改MySQL用户的host属性
16lz
2021-12-14
当你远程登录MySQL时,使用的账号要有特殊要求。
默认的账号的host属性都是localhost,意思是这个账号只能本地使用,如果要使用某个账号来远程登录,必须将账号的host属性值更改成%。
执行的sql语句如下:
update user set host = '%' where user = 'root';
1.忘了root密码
远程服务器起了一个mysql服务,里面有个hive账户,在远程服务器能通过命令行用mysql -hlocalhost -uxxx -pxxx的方式登录,但是用navicat客户端,怎么也登录不上,而且navicat显示的还是我自己机器的ip地址。
初步怀疑,是mysql里的A账户密码没有设置正确。于是需要用root账号对hive账户重新进行设置。
坑爹的是,mysql也不是我布的。而且测试环境,也不知道该找谁要密码。那就使出终极武器吧:修改root密码。
2.重置mysql root密码。
首先注意的一点:mysql的root账户与服务器的root账户不是同一个概念,不要混为一谈。
首先,停掉mysql服务:
sudo service mysql stop
然后,再以安全模式启动mysql:
sudo mysqld_safe --skip-grant-tables --skip-networking &
mysql -u root
然后,就可以重置root密码了:
mysql> use mysql; mysql> update user set password=PASSWORD("mynewpassword") where User='root'; mysql> flush privileges;
sudo service mysql restart
mysql -u root -pmynewpassword
mysql> use mysql;Database changedmysql> select User, Host from user where User='hive';+------+--------------+| User | Host |+------+--------------+| hive | 127.0.0.1 |+------+--------------+
mysql> update user set Host='%' where User='hive';
mysql> flush privileges;
mysql> select User, Host from user where User='hive';+------+------+| User | Host |+------+------+| hive | % |+------+------+
更多相关文章
- RelativeLayout相对布局中的属性
- 保留用户自定义设置
- android 动画
- android用户界面之按钮(Button)教程实例汇
- Android之应用程序基础
- Android开发——Android搜索框架(二)
- android用户界面-组件Widget-地图视图MapView
- android用户界面-组件Widget-画廊视图Gallery
- [Android] ACTION_GET_CONTENT与ACTION_PICK的区别