修改MYSQL密码的几种常用方法总结
首先要声明一点,大部分情况下,修改MySQL是需要有mysql里的root权限的, 所以一般用户无法更改密码,除非请求管理员。 方法一 使用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 。 注:使用phpmyadmin修改密码时一定要使用加密方式,否则修改后无法进入phpmyadmin!建议采用命令行修改密码进入mysql后mysql>update mysql.user set password=password('new password');mysql>flush privileges;如果采用phpmyadmin修改密码后无法登陆phpmyadmin,最简单的办法就是重装phpmyadmin,只需删除原来的phpmyadmin文件夹,重新将phpmyadmin得压缩包解压即可,此方法为本人在修改密码无法登陆时,想尽各种办法之后一气之下而想到的绝招,嘿嘿?? 您可能感兴趣的文章:MySql增加用户、授权、修改密码等语句MYSQL基础之连接MYSQL、修改密码、添加用户MySQL修改密码方法总结在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;
mysql忘记密码怎么改
阶段2:假定你能连接,服务器检查你发出的每个请求。看你是否有足够的权限实施它。这里的修改方法就是在启动数据库的时候不去检查user表中用户控制信息,使用指定的选项文件来启动数据库。一种方法是修改启动脚本文件 编辑启动脚本,启动mysql_safe是传递两个参数--skip-grant-tbales 设定跳过授权表登录--skip-networking设定不允许网络访问,只能本地主机访问启动服务器后使用更新授权表的方式修改user表的密码,移除配置文件的两个选项在重新启动服务器,可以使用新密码连接登录另一种方法:指定启动选项文件windows下的修改方法:安装mysql的时候默认是root用户,密码为空。作为管理员,假如忘记了密码,可以根据以下步骤来修改密码登录。一、如果mysqld服务器此时处于运行状态,要关闭mysqld服务器。开始菜单->控制面板->管理工具->服务然后在列表中找出MySQL服务器,并停止它。或者通过任务管理器来停止。二、创建一个文本文件,在单一第一行中写入SET PASSWORD FOR ‘root‘@‘localhost‘ = PASSWORD(‘MyNewPassword‘);用任意名称保存该文件。在本例中,该文件为C:\mysql-init.txt。 三、打开控制台窗口,进入DOS命令提示: 开始菜单->运行-> cmd 假定你已将MySQL安装到C:\mysql。如果你将MySQL安装到了另一位置,请对下述命令进行相应的调整。在DOS命令提示符下,执行命令: C:\> C:\mysql\bin\mysqld-nt --init-file=C:\mysql-init.txt 在服务器启动时,执行由“--init-file”选项命名的文件的内容,更改根用户密码。当服务器成功启动后,应删除C:\mysql-init.txt。 四、使用新密码连接mysql服务器如果你使用MySQL安装向导安装了MySQL,或许需要指定“--defaults-file”选项:C:\> C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqld-nt.exe --defaults-file="C:\Program Files\MySQL\MySQL Server 5.1\my.ini" --init-file=C:\mysql-init.txt使用服务管理器,可找到恰当的“--defaults-file”设置:开始菜单->控制面板->管理工具->服务在列表中找出MySQL服务,右击,并选择“属性”选项。在可执行字段的Path(路径)中包含“--defaults-file”设置。停止MySQL服务器,然后在正常模式下重启它。如果以服务方式运行服务器,应从Windows服务窗口启动它。如果以手动方式启动了服务器,能够像正常情形下一样使用命令。应能使用新密码进行连接。在linux系统下的修改方法:一、如果服务器是运行状态,需要停止服务器。找到mysqld的进程ID,将其杀死。 使用netstat -tunlp | grep mysqld 查看进程或者查看mysqld进程文件,常见位置是/var/lib/mysql/、/var/run/mysqld/和/usr/local/mysql/data/。 一般情况下,文件名的扩展名为.pid,二、创建文本文件,并将下述命令放在文件内的1行上:SET PASSWORD FOR ‘root‘@‘localhost‘ = PASSWORD(‘MyNewPassword‘); 用任意名称保存文件。对于本例,文件为/var/a.txt。 用特殊的“--init-file=~/mysql-init”选项重启MySQL服务器:三、启动服务器 [root@localhost bin]# /usr/bin/mysqld_safe --init-file=/var/a.txt & [1] 7375 [root@localhost bin]# 150701 10:31:38 mysqld_safe Logging to ‘/var/log/mysqld.log‘. 150701 10:31:38 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql 表示服务器启动成功。 文件init-file的内容在服务器启动时执行,更改根用户密码。服务器成功启动后,应删除~/mysql-init。四、使用新密码连接数据库 [root@localhost var]# mysql -u root -h localhost -pEnter password:Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 2Server version: 5.1.66 Source distributionCopyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type ‘help;‘ or ‘\h‘ for help. Type ‘\c‘ to clear the current input statement.mysql>作为可选方式,在任何平台上,可使用mysql客户端设置新密码(但该方法不够安全):停止mysqld,并用“--skip-grant-tables --user=root”选项重启它(Windows用户可省略--user=root部分)。使用下述命令连接到mysqld服务器:shell> mysql -u root在mysql客户端发出下述语句:mysql> UPDATE mysql.user SET Password=PASSWORD(‘newpwd‘)-> WHERE User=‘root‘;mysql> FLUSH PRIVILEGES;用打算使用的实际根用户密码替换“newpwd”。应能使用新密码进行连接。本文出自 “七颗星” 博客,请务必保留此出处http://qikexing.blog.51cto.com/7948843/1672500mysql忘记密码怎么改标签:管理员服务器windows忘记密码mysql登录密码
mysql忘记密码,如何修改
时隔半个月,我终于又开始操刀mysql,但是不小心砍到了我的脑子,密码什么的我全都忘了,结果,你懂的。。所以,今天我就总结了一下网上的解决方法以及我自己的解决方法的一些心得。方法一:免密码进入mysql再修改密码 步骤一:找到mysql安装目录下的配置文件,一般是my.ini。并在[mysqld]这一项的下方,添加 skip-grant-tables,然后保存文件。操作如下: 步骤二:重启mysql服务, 可以通过:在我的电脑上右键–>服务–>找到mysql服务进行重启。 步骤三:免密登录,进入终端, 敲入 mysql -u root -p 命令然后回车 ,这时候就可以直接进入了 步骤四:修改成为自己的密码,在终端输入 set password for ‘username‘@‘host‘ = password(‘newpassword‘)就好。注意事项:如果在输如mysql -u root -p后,显示如下图:这表明还没有启动mysql数据库。在我的电脑上右键–>服务–>找到mysql服务进行启动就好。或者直接在终端输入net start mysql也可以启动。方法二:遇事不决,重装解决。前言:如果你有之前mysql的压缩包,重装其实也是很好解决的,相比其他方法,“后遗症”相对少很多。 步骤一:关闭mysql服务,我的电脑上右键–>服务–>找到mysql服务,并关闭服务,操作如下:注意:我这里是将mysql数据文件放到了F盘的MySQLsoft文件下的,删除的时候将该文件夹里面的内容删除就好,MySQLsoft文件不用删除,因为到时候解压MySQL压缩包的时候以及路径仍然是在这个目录下进行操作。如果这个时候文件还是删除不了,重启电脑,再次进行上述的操作就好。 步骤二:解压mysql压缩包,并在目录下添加my.ini文件,并在其中填入初始化内容。操作如下:右侧内容,文本形式如下:(注意:下面的设置mysql安装目录还有data存放目录需要改成mysql文件存放目录)[mysqld]# 设置3306端口port=3306# 设置mysql的安装目录basedir=F:\MySQLsoft\mysql-8.0.20-winx64# 设置mysql数据库的数据的存放目录datadir=F:\MySQLsoft\mysql-8.0.20-winx64\data# 允许最大连接数max_connections=200# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统max_connect_errors=10# 服务端使用的字符集默认为UTF8character-set-server=utf8# 创建新表时将使用的默认存储引擎default-storage-engine=INNODB# 默认使用“mysql_native_password”插件认证default_authentication_plugin=mysql_native_password?[mysql]# 设置mysql客户端默认字符集default-character-set=utf8[client]# 设置mysql客户端连接服务端时默认使用的端口port=3306default-character-set=utf8 步骤三:在搜索栏输入cmd,在命令提示符上右键以管理员的身份运行,并按照如下顺序输入即可:(如果之前配置过,那么前两步可以省去)输入mysqld --initialize-insecure --user==mysql,正在初始化,稍等一会儿就行输入mysqld -install(安装过的话可以不用安装)输入net start mysql,启动mysql服务输入mysql -u root -p,不用输入密码,直接回车出现mysql>表示配置成功。输入alter user user() identified by "密码";即可上述就是我如何解决mysql忘记密码的问题了,还有就是快速修改法,本文参考如下: https://blog.csdn.net/lisongjia123/article/details/57418989?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-4.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-4.channel_parammysql忘记密码,如何修改标签:har重启modeloadedres忘记密码roosofstorage