zoukankan      html  css  js  c++  java
  • MySQL若何设置口令

    作者:天极软件 源头:天极软件

    在背面年夜节的例子里说明晰明晰一个紧张的准绳:当你运用INSERTUPDATE语句存储一个非空的口令时,你必需运用PASSWORD()函数加密它。这是因为在user表中以加密体式格局存储口令,而不是作为纯文本。若是你健忘这个理想,你可以像如许试图设置口令:

    shell> mysql -u root mysql 
    mysql> INSERT INTO user (Host,User,Password) VALUES('%','jeffrey','biscuit'); 
    mysql> FLUSH PRIVILEGES
    

    功效是纯文本值'biscuit'作为口令被存储在user表中。在用户jeffrey试图用这个口令衔接效劳器时,mysql客户用PASSWORD()加密它并且将功效送给效劳器,效劳器比拟在user表中的值(它是纯文本值'biscuit')和加密的口令(而不是 'biscuit'),比拟失败并且效劳器拒绝衔接:

    shell> mysql -u jeffrey -pbiscuit test
    Access denied
    

    因为当他们被拔出user表时,口令必需被加密,相反,INSERT语句应该象如许被指定:

    mysql> INSERT INTO user (Host,User,Password)
           VALUES('%','jeffrey',PASSWORD('biscuit'));
    

    当你运用SET PASSWORD语句时,你也必需运用PASSWORD()函数:

    mysql> SET PASSWORD FOR jeffrey@"%" = PASSWORD('biscuit'); 
    

    若是你运用GRANT ... IDENTIFIED BY语句或mysqladmin password命令设置口令,PASSWORD()函数是不必要的。他们都思量到为你加密口令,多以你可像如许指定一个口令'biscuit'

    mysql> GRANT USAGE ON *.* TO jeffrey@"%" IDENTIFIED BY 'biscuit';
    


    shell> mysqladmin -u jeffrey password biscuit 
    

    留神: PASSWORD()不因此在Unix口令加密的异常举措实验口令加密。你不该该假定若是你的Unix口令和你的MySQL口令是一样的,PASSWORD()将招致与在Unix口令文件被存储的异常的加密值。见6.2 MySQL 用户名和口令。





    版权声明: 原创作品,容许转载,转载时请务必以超链接体式格局标明文章 原始来由 、作者信息和本声明。否则将清查功令责任。

  • 相关阅读:
    Python入门-函数进阶
    Python入门-初始函数
    Leetcode300. Longest Increasing Subsequence最长上升子序列
    Leetcode139. Word Break单词拆分
    Leetcode279. Perfect Squares完全平方数
    Leetcode319. Bulb Switcher灯泡开关
    Leetcode322. Coin Change零钱兑换
    二叉树三种遍历两种方法(递归和迭代)
    Leetcode145. Binary Tree Postorder Traversal二叉树的后序遍历
    Leetcode515. Find Largest Value in Each Tree Row在每个树行中找最大值
  • 原文地址:https://www.cnblogs.com/zgqjymx/p/1975256.html
Copyright © 2011-2022 走看看