使用mysqladmin命令修改MySQL密码与忘记密码

<p>修改密码:</p><p>1.例如你的 root用户现在没有密码,你希望的密码修改为123456,那么命令是:</p><pre class="brush:bash;toolbar:false">mysqladmin-urootpassword123456</pre><p>2.如果你的root现在有密码了(123456),那么修改密码为abcdef的命令是:</p><pre class="brush:bash;toolbar:false">mysqladmin-uroot-ppasswordabcdef</pre><p>注意,命令回车后会问你旧密码,输入旧密码123456之后命令完成,密码修改成功。</p><p>3.如果你的root现在有密码了(123456),那么修改密码为abcdef的命令是:</p><pre class="brush:bash;toolbar:false">mysqladmin-uroot-p123456passwordabcdef(注意-p不要和后面的密码分 开写,要写在一起,不然会出错,错误如下所示)</pre><p>4.使用phpmyadmin,这是最简单的了,修改mysql库的user表,</p><p>不过别忘了使用PASSWORD函数。</p><p>忘记密码:</p><p>下面我们提供了6种不同的修改mysql root用户的密码,与增加mysql用户的方法。</p><p>方法一</p><p>使用phpmyadmin,这是最简单的了,修改mysql库的user表,</p><p>不过别忘了使用PASSWORD函数。</p><p>方法二</p><p>使用mysqladmin,这是前面声明的一个特例。</p><pre class="brush:bash;toolbar:false">mysqladmin-uroot-ppasswordmypasswd</pre><p>输入这个命令后,需要输入root的原密码,然后root的密码将改为mypasswd。</p><p>把命令里的root改为你的用户名,你就可以改你自己的密码了。</p><p>当然如果你的mysqladmin连接不上mysql server,或者你没有办法执行mysqladmin,</p><p>那么这种方法就是无效的。</p><p>而且mysqladmin无法把密码清空。</p><p>下面的方法都在mysql提示符下使用,且必须有mysql的root权限:</p><p>方法三</p><pre class="brush:bash;toolbar:false">mysql&gt;INSERTINTOmysql.user(Host,User,Password) VALUES(&#39;%&#39;,&#39;jeffrey&#39;,PASSWORD(&#39;biscuit&#39;)); mysql&gt;FLUSHPRIVILEGES</pre><p>确切地说这是在增加一个用户,用户名为jeffrey,密码为biscuit。</p><p>在《mysql中文参考手册》里有这个例子,所以我也就写出来了。</p><p>注意要使用PASSWORD函数,然后还要使用FLUSH PRIVILEGES。</p><p>方法四</p><p>和方法三一样,只是使用了REPLACE语句</p><pre class="brush:bash;toolbar:false">mysql&gt;REPLACEINTOmysql.user(Host,User,Password) VALUES(&#39;%&#39;,&#39;jeffrey&#39;,PASSWORD(&#39;biscuit&#39;)); mysql&gt;FLUSHPRIVILEGES</pre><p>方法五</p><p>使用SET PASSWORD语句,</p><pre class="brush:bash;toolbar:false">mysql&gt;SETPASSWORDFORjeffrey@&quot;%&quot;=PASSWORD(&#39;biscuit&#39;);</pre><p><br/></p><p>拟也必须使用PASSWORD()函数,</p><p>但是不需要使用FLUSH PRIVILEGES。</p><p>方法六</p><p>使用GRANT ... IDENTIFIED BY语句</p><pre class="brush:bash;toolbar:false">mysql&gt;GRANTUSAGEON*.*TOjeffrey@&quot;%&quot;IDENTIFIEDBY&#39;biscuit&#39;;</pre><p><br/></p><p>这里PASSWORD()函数是不必要的,也不需要使用FLUSH PRIVILEGES。</p><p>注意: PASSWORD() [不是]以在Unix口令加密的同样方法施行口令加密。</p><p>MySQL 忘记口令的解决办法</p><p>如果 MySQL 正在运行,首先杀之: killall -TERM mysqld。</p><p>启动 MySQL :bin/safe_mysqld --skip-grant-tables &amp;</p><p>就可以不需要密码就进入 MySQL 了。</p><p>然后就是</p><pre class="brush:bash;toolbar:false">&gt;usemysql &gt;updateusersetpassword=password(&quot;new_pass&quot;)whereuser=&quot;root&quot;; &gt;flushprivileges;</pre><p>重新杀 MySQL ,用正常方法启动 MySQL 。</p>
RangeTime:0.007879s
RangeMem:207.58 KB
返回顶部 留言