mysql登陆,创建用户,权限控制

本文涉及的产品
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS DuckDB + QuickBI 企业套餐,8核32GB + QuickBI 专业版
简介: mysql登陆,创建用户,权限控制 一.如何登陆mysql: 1.下载安装mysql数据库:( 我们以5.5版本为例进行学习) 注意: (1)下载安装时文件路径中不要有中文,不然路径不能解析,安装会失败。

mysql登陆,创建用户,权限控制

一.如何登陆mysql:

1.下载安装mysql数据库:( 我们以5.5版本为例进行学习)

注意:

(1)下载安装时文件路径中不要有中文,不然路径不能解析,安装会失败。

(2)一般的数据库软件中有很多插件,选择性的安装,一般只需要client,server,database  

(3)在安装数据库的过程中会创建root用户及可以备选的用户,及密码。

2.登陆mysql:

(1)第一种方式(一般本地连接):通过client登陆,默认使用的是root用户,直接输入密码就可以登陆。如下图所示:

         

(2)第二种方式(本地或者远程连接):

         以windows为例:在dos窗口中cd到mysql安装目录下的bin目录,然后输入一下命令

         >mysql -hlocalhost -uroot -p123456          -h后面的参数是请求连接的机器地址(一般本地连接时省略),-u后面接的是用户名,-p后面接的是密码

       

二.mysql数据库用户创建及权限管理:

1.创建用户并赋权限:

(1)第一种方式:grant命令

        mysql>grant all privileges on *.* to username@hostname identified by 'password';

        mysql>flush privileges;                  //权限修改之后一定要记得刷新系统权限表才能生效

  格式:grant 权限 on 数据库.表 to 用户名@登录主机 identified by "密码"; 

       

       通过grant命令可以创建用户同时分配权限,也可以给已有的用户赋权限,而且权限可以重复附加(第一次给查的权限,第二次给删的权限)

       hostname如果用“%”表示所有的机器都可以连接此数据库。

(2)第二种方式:create user命令:

      mysql>create user ‘jwang13’@'localhost' identified by 'jwang13';

      mysql>flush privileges;

     

     注:通过这种方式创建用户之后可以通过grant命令进行权限赋值。在创建用户时identified by password为可选项,不设置默认不用密码

(3)第三种方式:直接往user表中插入一条记录

         mysql>insert into user (user,host,password,.......) values('jwang12','localhost',password('jwang12'),.......);

         mysql>flush privileges;

         然后通过grant命令给用户赋权限,这种方式一般很少用。

说明:user表中不同的数据库版本中字段的名字不太一致,比如password字段在高版本的user表中就没有,并且在插入时很多字段是默认不能为空的,所以在创建用户并赋权限的时候多采用第一种方式。

 2.查看用户及主机:

      mysql库中有一张user表,记录了用户的名称,主机,密码等信息

      mysql>select user,host,password from user;

      

 3.修改用户的密码:

     (1)第一种方式:修改用户密码实际上就是根据主机和用户名来更改user表中的密码,如下图所示:

     mysql>update mysql.user set password='jwang13' where user='jwang' and host='localhost';

     mysql>flush privileges

       

    (2)第二种方式:在登陆时通过mysqladmin命令修改密码;

           cd到mysql的安装bin目录,然后执行:

           mysqladmin -u username -p password newpassword

           Enter Password:*******       输入旧密码回车即可

           mysql -u username -p 

           Enter Password:*******       输入新密码回车即可进入数据库环境

          

 4.删除用户信息:

    (1)删除用户:这种方式只是删除了user表中的记录

   mysql>Delete FROM user Where User='jwang' and Host='localhost';

   mysql>flush privileges;

    (2)删除账户及权限:这种方式清除了有关该用户的所有信息,包括权限信息

        mysql>drop user 用户名@'%';

        mysql>drop user 用户名@ localhost; 

        

注意:如果只是删除了user表中的记录的话权限信息依然存在,如果重新添加一个用户和原先删除的用户一样的话,那他默认会拥有原先同名用户的权限信息。

5.mysql权限验证过程:

    常识1:在mysql数据库中,有mysql_install_db脚本初始化权限表,存储权限的表有:

                 user,db,host,table_priv,columns_priv,proc_priv

        

 常识2:MySQL存取控制包含2个阶段:     

              阶段1服务器检查你是否允许连接。

              阶段2:假定你能连接,服务器检查你发出的每个请求。看你是否有足够的权限实施某个具体的请求(如select)

常识3:user表中有很多字段,大致分为3类:

    (1)用户列:host,user,password(有的版本的user表中没有这个字段)

    (2)权限控制列:select_priv,insert_priv等以priv结尾的字段

    (3)安全控制列:ssl_type,ssl_cipher,x509_issuer,x509_subject(ssl用于加密,x509可以用来标识用户)

    (4)资源控制列:max_questions:每小时可以允许有多少次查询

                                   max_updates:每小时可以允许执行多少次更新

                                   max_connections:每小时可以建立多少次链接

                                   max_user_connects:单个用户可以同时具有的连接数。

      注意:有的版本中没有password,而是多了几个与密码相关的字段。在使用insert into user方法新建用户时,user表中部分字段不能为空,要设置默认值。

原文地址https://blog.csdn.net/m0_38045882/article/details/81431298

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
SQL 关系型数据库 MySQL
⑤ 【MySQL】DCL语句 —— 用户管理、权限控制
⑤ 【MySQL】DCL语句 —— 用户管理、权限控制
300 0
|
关系型数据库 MySQL 数据库
认真学习MySQL中的角色权限控制
认真学习MySQL中的角色权限控制
396 0
|
关系型数据库 MySQL 数据库
mysql的用户管理和权限控制
本文介绍了MySQL中用户管理的基本操作,包括创建用户、修改密码、删除用户、查询权限、授予权限和撤销权限的方法。
573 2
|
关系型数据库 MySQL 数据库
【MySQL-10】DCL-数据控制语言-【管理用户&权限控制】 (语法语句&案例演示&可cv案例代码)
【MySQL-10】DCL-数据控制语言-【管理用户&权限控制】 (语法语句&案例演示&可cv案例代码)
【MySQL-10】DCL-数据控制语言-【管理用户&权限控制】 (语法语句&案例演示&可cv案例代码)
|
SQL 关系型数据库 MySQL
MySQL数据库——SQL(4)-DCL(管理用户、权限控制)
MySQL数据库——SQL(4)-DCL(管理用户、权限控制)
307 1
|
存储 SQL 缓存
万字长文~vue+express+mysql带你彻底搞懂项目中的权限控制(附所有源码)
万字长文~vue+express+mysql带你彻底搞懂项目中的权限控制(附所有源码)
568 0
|
关系型数据库 MySQL 数据库
MySQL技能完整学习列表9、用户管理和权限控制——1、创建和管理用户——2、权限授予和撤销
MySQL技能完整学习列表9、用户管理和权限控制——1、创建和管理用户——2、权限授予和撤销
222 0
|
关系型数据库 MySQL 数据安全/隐私保护
MySQL用户相关-创建用户
MySQL用户相关-创建用户
335 0
|
关系型数据库 MySQL 数据库
mysql创建用户角色后无法登陆_解决方法
mysql创建用户角色后无法登陆_解决方法
426 0
|
关系型数据库 MySQL 数据库
MySQL--创建用户命令grant语句学习(详细学习)
MySQL--创建用户命令grant语句学习(详细学习)
1370 1

推荐镜像

更多