zoukankan      html  css  js  c++  java
  • MySQL之字段约束与权限管理

    一、常见的字段约束

    在MySQL数据库中有许多常见的字段约束,所谓的字段约束就是在设置字段时需要给字段添加一些“枷锁”。

    常见的字段约束有:

    INT(n)     数据类型及允许数据的个数

    NOT NULL   非空

    DEFAULT    默认值

    PRIMARY KEY  主键约束,不能为空,不能重复,一般情况下一张表中至少要有一个主键

    AUTO_INCREMENT   自增,一般配合数值类型的主键去使用

    UNSIGNED   无符号,正数  

    UNIQUE   唯一约束,具有唯一性(不能重复) 可以为空

    FOREIGN KEY(当前表的外键字段) REFERENCES 关联表名(关联表字段)    外键约束,在创建关系映射时需要进行设置

    二、权限管理

    1、修改密码

    若是想修改MySQL数据库的密码,首先需要进入到MySQL数据库中。

    之后,显示所有的数据库:

    mysql>SHOW DATABASES;

    进入mysql数据库中,查看该库中的所有的表:

    USE mysql;
    SHOW TABLES;

    更新user表中对应用户的authentication_string字段的值:

    UPDATE user SWT authentication_string=password(你要设置的新密码) WHERE User='需要设置密码的用户' AND Host='用户所对应的IP地址';

    例:

    UPDATE user SET authentication_string=password(123456) WHERE User='root' AND Host='localhost';

    2、忘记密码

    如果在登录MySQL数据库时忘记了自己以前设置的密码。应该如何处理呢?

    首先修改配置文件。

    在MySQL数据库文件夹中的mysqld文件下面添加skip-grant-tables,该命令是用于登录MySQL数据库时跳过权限认证。

    其次重新启动MySQL服务,之后不使用密码登录root用户,接下来执行修改密码的操作,修改密码完成后退出数据库并把配置文件改回来,最后再重启MySQL服务,使用修改后的密码登录即可。

    3、创建用户

    格式:

    CREATE USER '用户名'@'ip地址' IDENTIFIED BY '密码'

    下面是几个例子:

    添加一个李四的账户,只能允许在本地登录

    Create user 'lisi'@'localhost' identified by '123456';

    添加一个wangwu用户,只允许10.10.91.3ip去登录

    Create user 'wangwu'@'10.10.91.3' identified by '123456';

    添加一个 zl用户,不限制登录地址(不限制来源地) 

    Create user 'zl'@'%' identified by '123456';

    4、给用户授权

    一般而言,公司中的数据库需要给一些用户进行授权,使其可以进行远程连接。

    语法格式:

    GRANT 权限 ON 库名.表名 TO '用户名'@'地址'

    例如:

    给lisi授权,允许操作(select,insert,update)demo6库中的user表

    GRANT SELECT,INSERT,UPDATE ON demo6.user TO 'lisi'@'localhost';

    给zl授权,允许操作(select,insert,update) 所有的库和所有的表

    GRANT SELECT,INSERT,UPDATE ON *.* TO 'zl'@'%';

    5、删除用户

    有些用户可能过段时间就不用了,对于不用的用户就要进行删除用户操作。

    语法格式为:

    DROP user '用户名'@'ip地址';

    例如删除wangwu用户

    DROP user 'wangwu'@'10.10.91.3';
  • 相关阅读:
    Ubuntu 16.04
    每天一道LeetCode--389. Find the Difference
    每天一道LeetCode--371. Sum of Two Integers
    Ubuntu 16.04 小飞机启动失败
    每天一道LeetCode--344. Reverse String
    leetcode1458 Max Dot Product of Two Subsequences
    CF1313C2 Skyscrapers (hard version)
    CF1295C Obtain The String
    CF1251D Salary Changing
    CF1286A Garland
  • 原文地址:https://www.cnblogs.com/lavender1221/p/12948994.html
Copyright © 2011-2022 走看看