方法1: 用SET PASSWORD命令
首先登录MySQL。
格式:mysql>set password for 用户名@localhost = password(‘新密码’)
例子:mysql>set password for root@localhost = password(‘123’)
方法2:用mysqladmin
格式:mysqladmin -u用户名 -p旧密码 password 新密码
例子:mysqladmin -uroot -p123456 password 123
方法3:用UPDATE直接编辑user表
首先登录MySQL。
mysql>use mysql
mysql>update user set password=password(‘123’) where user=’root’ and host=’localhost’
mysql>flush privileges;
方法4:在忘记root密码的时候,可以这样
以windows为例:
1. 关闭正在运行的MySQL服务。
2. 打开DOS窗口,转到mysql\bin目录。
3. 输入mysqld _skip-grant-tables 回车。_skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证。
4. 再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),转到mysql\bin目录。
5. 输入mysql回车,如果成功,将出现MySQL提示符 >。
6. 连接权限数据库: use mysql。
6. 改密码:update user set password=password(“123”) where user=”root”(别忘了最后加分号) 。
7. 刷新权限(必须步骤):flush privileges 。
8. 退出 quit。
9. 注销系统,再进入,使用用户名root和刚才设置的新密码123登录。
ROOT是一种存在于UNIX系统(如AIX、BSD等)和类UNIX系统(如大名鼎鼎的Linux,比如稳定到服务器都在用的Debian、适合长期作业成熟老道的Redhat、比较流行的Ubuntu和archlinux等Linux发行版以及Android系统)中的唯一的超级用户,其相当于Windows系统中的SYSTEM(XP及以下)/TrustedInstaller(Vista及以上)用户。其具有系统中所有的权限,如启动或停止一个进程,删除或增加用户,增加或者禁用硬件等等。
利用 GRANT 语句进行授权。
具体步骤如下:
1、首先使用一个没有权限的账号链接mysql,成功之后执行:show databases;这时会发现没有权限的用户只能看到一个数据库,mysql和test等数据库是看不到的;
2、如果已经安装了phpmyadmin,打开127.0.0.1/phpmyadmin,在菜单栏找到用户,然后找到没有权限的用户,点击编辑权限;
3、跳转到设置页面,找到全局权限,在全选checkbox打勾,点击右下角的执行,完成后该用户就获得了mysql数据库的所有权限;
4、再次用该账号再次链接mysql,链接成功后执行:show databases;你会发现所有数据库都会显示出来,而且使用该账号可以进行任意编辑;
5、也可以直接在cmd窗口命令行设置,设置权限的命令为:
REVOKE ALL PRIVILEGES ON *.* FROM 'root'@'localhost'GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost'WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0
以用户 lucia_test 举例 如果要对 root 设置 就把用户换成 root 即可
首先以 root 用户身份登录数据库
然后查看用户 lucia_test 的权限:
mysql>show grants for lucia_test
usage 表示“无访问权限”
给 lucia_test 这个用户添加全部权限:
mysql>grant all privileges on *.* to 'lucia_test'@'%'
all privileges 表示所有权限
为保证权限设置生效 还要刷新一下:
mysql>flush privileges
这样子 指定的用户 lucia_test 就被赋予了全部权限
可以用同样的方法 设置 root 用户的权限
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)