1. 修改密码有三种方法:
1.1 ---->用mysqladmin修改密码
格式:mysqladmin -u用户名 -p旧密码 password 新密码
例子:
# mysqladmin -uroot -p123456 password 123
只用mysqladmin的时候,会出现一个warning警告信息:
Warning: Using a password on the command line interface can be insecure.
这个没关系,是提示你,你直接在命令窗口下使用明文设置密码的时候,是不安全的,因为别人可以通过翻看你输入指令的历史记录来查看到你设置的密码
# history 可以查看到mysqladmin设置的密码,不建议使用mysqladmin设置密码
1.2 ---->用set password命令
格式:mysql> set password for 用户名@localhost = password('新密码');
例子:
# mysql -p
mysql> set password for root@localhost = password('Xl_2020?');
mysql> flush privileges;
1.3 ---->用update直接编辑mysql库中的user表来修改密码
例子:
mysql> update mysql.user set password=PASSWORD('password') where user='root';
或
mysql> update mysql.user set password=PASSWORD('password') where user='root' and host='localhost' # 加上主机
mysql> flush privileges;
2. 以上修改数据库密码的前提是知道当前的密码,那么如果忘记数据库的密码如何重置呢?
# vi /etc/my.cnf
在[mysqld]的段中加上一句:skip-grant-tables
# /etc/init.d/mysqld restart
# mysql
mysql> --用上面1.2或者1.3的方法修改密码
密码修改完成后,把my.cnf的skip-grant-tables去掉,再重启数据库即可