linux修改数据库密码?linux mysql修改密码命令
大家好,关于linux修改数据库密码很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于linux mysql修改密码命令的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!
linux怎么修改mysql密码
1.首先用管理员权限登陆Linux;
2.输入:vi/etc/my.cnf回车。然后按“i”键盘,在这个文件中的最后一行输入:skip-grant-tables
然后按 esc键,然后输入“:wq”保存并退出;
3.重启MySQL服务
输入:service mysqld restart回车;
4.输入 mysql-uroot-p;
然后提示你输入密码,直接回车就可以进入mysql数据库了;
开始修改MySQL用户密码
①输入use mysql回车;
②输入update user set password= password(“147g58”)where user=’root’;
“147g58”为你自己设置的密码;
显示“Query OK”这就表明修改成功了,
5.最后一步,退出mysql,将一开始修改的/etc目录下的my.cnf文件的最后一行去掉,重启服务;
①输入 exit退出mysql
②改my.cnf文件;删掉最后一行;
然后按ESC键盘,再输入”:wq”保存退出;
③重启服务:
就可以用你修改的密码登录mysql数据库了;
linux mysql修改密码命令
想知道linux下怎么修改密码吗?下面由我为大家整理了linux mysql修改密码命令,希望大家喜欢!
linux mysql修改密码命令
1.修改root密码
linux mysql修改密码命令方法1:使用mysqladmin命令
--适用于记得root旧密码,修改root密码
语法:
mysqladmin-u用户名-p旧密码 password新密码
例如:
# mysqladmin-u root-proot password mysql
--注意:如当旧密码输入错误时会报如下错误
# mysqladmin-u root-proot1 password mysql
mysqladmin: connect to server at'localhost' failed
error:'Access denied for user'root'@'localhost'(using password: YES)'
linux mysql修改密码命令方法2:直接更新user表password字段
--适用于忘记root密码,而对root密码进行重置
Step 1:修改MySQL的登录设置
# vi/etc/my.cnf
--windows系统是my.ini文件
--在[mysqld]的段中加上一句:skip-grant-tables,如没有[mysqld]字段,可手动添加上
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
skip-name-resolve
skip-grant-tables
Step 2:重新启动mysql
[root@gc~]# service mysql restart
Shutting down MySQL..[确定]
Starting MySQL...[确定]
Step 3:登录并修改MySQL的root密码
--此时直接用mysql即可无需密码即可进入数据库了
[root@gc~]# mysql
Welcome to the MySQL monitor. Commands end with; or \g.
Your MySQL connection id is 2
Server version: 5.5.24 MySQL Community Server(GPL)
Copyright(c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type'help;' or'\h' for help. Type'\c' to clear the current input statement.
mysql> use mysql;
Database changed
mysql> update user set password=password('new_password') where user='root';
Query OK, 5 rows affected(0.00 sec)
Rows matched: 5 Changed: 5 Warnings: 0
mysql> flush privileges;
Query OK, 0 rows affected(0.00 sec)
--注意:如果没做step1,直接用mysql登录时会报如下错误
[root@gc~]# mysql
ERROR 1045(28000): Access denied for user'root'@'localhost'(using password: NO)
Step 4:将MySQL的登录设置修改回来
再删除/etc/my.cnf文件中的skip-grant-tables
Step 5:重新启动mysql
[root@gc~]# service mysql restart
Shutting down MySQL..[确定]
Starting MySQL...[确定]
2.修改mysql其它用户密码
同样,普通用户也可以用上面的方法
--使用mysqladmin命令
[root@njdyw~]# mysqladmin-u user1-ppass1 password pass2
--直接修改数据库表
[root@njdyw~]# mysql-u user1-ppass1–Dmysql
mysql> update user set password=password('pass2') where user='user1';
mysql> flush privileges;
linux mysql 忘记密码 怎么修改密码
1.例如你的 root用户现在没有密码,你希望的密码修改为123456,那么命令是:
mysqladmin-u root password 123456
2.如果你的root现在有密码了(123456),那么修改密码为abcdef的命令是:
mysqladmin-u root-p password abcdef
注意,命令回车后会问你旧密码,输入旧密码123456之后命令完成,密码修改成功。
3.如果你的root现在有密码了(123456),那么修改密码为abcdef的命令是:
mysqladmin-u root-p123456 password abcdef(注意-p不要和后面的密码分
开写,要写在一起,不然会出错,错误如下所示)
4.使用phpmyadmin,这是最简单的了,修改mysql库的user表,
不过别忘了使用PASSWORD函数。
忘记密码:
下面我们提供了6种不同的修改mysql root用户的密码,与增加mysql用户的方法。
方法一:
使用phpmyadmin,这是最简单的了,修改mysql库的user表,
不过别忘了使用PASSWORD函数。
方法二:
使用mysqladmin,这是前面声明的一个特例。
mysqladmin-u root-p password mypasswd
输入这个命令后,需要输入root的原密码,然后root的密码将改为mypasswd。
把命令里的root改为你的用户名,你就可以改你自己的密码了。
当然如果你的mysqladmin连接不上mysql server,或者你没有办法执行mysqladmin,
那么这种方法就是无效的。
而且mysqladmin无法把密码清空。
下面的方法都在mysql提示符下使用,且必须有mysql的root权限:
方法三:
mysql> INSERT INTO mysql.user(Host,User,Password)
VALUES('%','jeffrey',PASSWORD('biscuit'));
mysql> FLUSH PRIVILEGES
确切地说这是在增加一个用户,用户名为jeffrey,密码为biscuit。
在《mysql中文参考手册》里有这个例子,所以我也就写出来了。
注意要使用PASSWORD函数,然后还要使用FLUSH PRIVILEGES。
方法四:
和方法三一样,只是使用了REPLACE语句
mysql> REPLACE INTO mysql.user(Host,User,Password)
VALUES('%','jeffrey',PASSWORD('biscuit'));
mysql> FLUSH PRIVILEGES
方法五:
使用SET PASSWORD语句,
mysql> SET PASSWORD FOR jeffrey@"%"= PASSWORD('biscuit');
拟也必须使用PASSWORD()函数,
但是不需要使用FLUSH PRIVILEGES。
方法六:
使用GRANT... IDENTIFIED BY语句
mysql> GRANT USAGE ON*.* TO jeffrey@"%" IDENTIFIED BY'biscuit';
这里PASSWORD()函数是不必要的,也不需要使用FLUSH PRIVILEGES。
注意: PASSWORD() [不是]以在Unix口令加密的同样方法施行口令加密。
MySQL忘记口令的解决办法
如果 MySQL正在运行,首先杀之: killall-TERM mysqld。
启动 MySQL:bin/safe_mysqld--skip-grant-tables&
就可以不需要密码就进入 MySQL了。
然后就是
>use mysql
>update user set password=password("new_pass") where user="root";
>flush privileges;
重新杀 MySQL,用正常方法启动 MySQL。
其它办法:
办法一:在linux下忘记mysql的密码,咋整?有一种方法可以很快的重设密码。
首先,关闭mysql.
这个时候你用Mysqladmin shutdown来关闭mysql基本是不可能的,为啥,因为你不知到密码了么,用其它用户去连接mysql库,会提示你没有权限。
其次,直接用kill命令也是不行的。mysqld_safe启动以后,如果mysqld被kill掉,这个进程会自动重启,真是坑爹啊!
那么,只能使出绝招了
killall-TERM mysqld
第二步,到root用户下(或者是mysql服务的安装用户下)绕开安全权限启动mysqld
/usr/local/mysql/bin/mysqld_safe--skip-grant-tables&
第三步,修改Mysql库中的user表,重新赋予新的权限
>use mysql
>update user set password=password("new_pass") where user="root";
>flush privileges;
注意,这步会把所有user=root的账户密码都设为这个,可以在where里加入针对性的限定条件
第四步,重新kill掉mysqld,然后重启,一切ok
办法二:
1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库。
因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的状态下,其他的用户也可以任意地登录和修改MySQL的信息。可以采用将MySQL对外的端口封闭,并且停止Apache以及所有的用户进程的方法实现服务器的准安全状态。最安全的状态是到服务器的Console上面操作,并且拔掉网线。
2.修改MySQL的登录设置:
# vi/etc/my.cnf
在[mysqld]的段中加上一句:skip-grant-tables
例如:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
skip-grant-tables
保存并且退出vi。
3.重新启动mysqld
#/etc/init.d/mysqld restart
Stopping MySQL: [ OK ]
Starting MySQL: [ OK ]
4.登录并修改MySQL的root密码
#/usr/bin/mysql
Welcome to the MySQL monitor. Commands end with; or\g.
Your MySQL connection id is 3 to server version: 3.23.56
Type'help;' or'\h' for help. Type'\c' to clear the buffer.
mysql> USE mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with-A
Database changed
mysql> UPDATE user SET Password= password('new-password') WHERE User='root';
Query OK, 0 rows affected(0.00 sec)
Rows matched: 2 Changed: 0 Warnings: 0
mysql> flush privileges;
Query OK, 0 rows affected(0.01 sec)
mysql> quit
Bye
5.将MySQL的登录设置修改回来
# vi/etc/my.cnf
将刚才在[mysqld]的段中加上的skip-grant-tables删除
保存并且退出vi。
6.重新启动mysqld
#/etc/init.d/mysqld restart
Stopping MySQL: [ OK ]
Starting MySQL: [ OK ]
linux mysql怎么修改root密码
linux系统重置mysql的root密码的方法如下:
1、检查操作系统是否安装有mysql数据库,在debian操作系统检查命令:dpkg--list|grep mysql如下图;
2、先检查root用户密码是否已经忘记,输入命令:mysql-uroot-p如下图;
3、数据库的root用户密码忘记了,重装不是权益之计,下面小白就告诉你怎么跳过安全验证修改密码,先关闭进程中的mysql服务,如下图;
4、然后用非正常方式起动mysql,/usr/local/mysql/bin/mysqld_safe–skip-grant-tables&,如下图;
5、这样就可以不需要密码进入mysql,/usr/local/mysql/bin/mysql-u root-p(要求输入密码时直接回车即可),如下图;
6、然后就是>use mysql;>update user set password=password("输入新的密码") where user="root";>flush privileges;重新杀掉mysql进程,用正常方法启动mysql,一切OK,大功告成,如下图;
文章到此结束,如果本次分享的linux修改数据库密码和linux mysql修改密码命令的问题解决了您的问题,那么我们由衷的感到高兴!