重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
方法1: 用SET PASSWORD命令
创新互联公司是一家专注于网站设计、网站建设与策划设计,乌苏网站建设哪家好?创新互联公司做网站,专注于网站建设10年,网设计领域的专业建站公司;建站业务涵盖:乌苏等地区。乌苏做网站价格咨询:13518219792
首先登录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及以上)用户。其具有系统中所有的权限,如启动或停止一个进程,删除或增加用户,增加或者禁用硬件等等。
那就是你正常启动的账户权限不足,无法查看用户表。可提高权限在登录查看
解决方法如下:
让mysql不载入权限表,命令:mysqld --skip-grant-tables(windows)、mysqld_safe --skip-grant-tables user=mysql或者/etc/init.d/mysql start --mysqld --skip-grant-tables (linux)
打开另外一个命令窗口,进入mysql的交互界面,密码随便输入。
用update语句设置密码(此时不能用set password语句)。
验证密码修改是否成功
1. 关闭正在运行的MySQL服务--net stop mysql
2. 打开DOS窗口,转到mysql\bin目录。
3. 输入mysqld --skip-grant-tables 回车。--skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证,注意skip前面是两个逗-地 ,此时DOS窗口无法输入
4. 再开一个DOS窗口,转到mysql\bin目录。
5. 输入mysql回车,如果成功,将出现MySQL提示符 。
6. 连接权限数据库: use mysql; 。
7. 改密码:
update user set password=password("123") where user="root";(别忘了最后加分号)
8. 刷新权限(必须步骤):flush privileges; 。
9. 退出 quit。
1.管理员权限进DOS窗口,停止MySQL服务: net stop mysql56
2.命令通过跳过权限安全检查,开启mysql服务,这样连接mysql时,可以不用输入用户密码,双引号里面是my.ini的路径:
mysqld --defaults-file="C:\ProgramData\MySQL\MySQL Server 5.6\my.ini" --console --skip-grant-tables
3.打开另一个DOS窗口,无密码进入数据库: mysql -uroot -p
4.使用MySQL数据库: use mysql;
5.设置密码: update user set password=password('newpassword') where user='root';
6.刷新权限: flush privileges;
7.退出: quit;
8.重新登录: mysql -uroot -p
1、首先检查mysql服务是否启动,若已启动则先将其停止服务,可在开始菜单的运行,使用命令:
开始-菜单-cmd-net stop mysql
打开第一个cmd1窗口,切换到mysql的bin目录。
切换方法:首先找到mysql目录,我的目录是C:\Program Files (x86)\MySQL\MySQL Server 6.0\bin
然后运行命令:cd C:\Program Files (x86)\MySQL\MySQL Server 6.0\bin 切换成功
然后运行命令:
mysqld --defaults-file="C:\Program Files (x86)\MySQL\MySQL Server 6.0\my.ini" --console --skip-grant-tables
注释:
该命令通过跳过权限安全检查,开启mysql服务,这样连接mysql时,可以不用输入用户密码。 此时已经开启了mysql服务了!相当于自己建立了一个mysql服务线程。
这个窗口保留 不关闭。
2、打开第二个cmd2窗口,同样切换到mysql的bin目录,连接mysql:
输入命令:
mysql -u root -p
出现:
Enter password:
在这里直接回车,不用输入密码。
然后就就会出现登录成功的信息,
使用命令:
show databases;
使用命令切换到mysql数据库:
use mysql;
使用命令更改root密码:
update user set password=password("123456") where user="root";
提示:123456可以 更改为其它密码,看自己喜好。
刷新权限:
flush privileges;
然后退出
quit
可以关掉之前的cmd1 窗口了。
然后启动mysql服务
net start mysql
重新登录,输入
mysql -u root -p
出现输入密码提示,输入新的密码即可登录:
Enter password: ******
显示登录信息: 成功
问题解决