mysql 新增 删除用户和权限分配

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

1. 新增用户

 

mysql>insert into mysql.user(Host,User,Password) values("localhost","lionbule",password("hello1234"));  


mysql>flush privileges;  

 

2. 修改用户密码


mysql>update mysql.user set password=password('new password') where User="lionbule" and Host="localhost";  


mysql>flush privileges;  

3. 删除用户


mysql>DELETE FROM user WHERE User="lionbule" and Host="localhost";  

mysql>flush privileges;  

 

4. 权限分配

    4.1. grant用法

           grant 权限 on 数据库.* to 用户名@'登录主机' identified by '密码'


权限:  

    常用总结, ALL/ALTER/CREATE/DROP/SELECT/UPDATE/DELETE  

数据库:  

     *.*                    表示所有库的所有表  


    test.*                表示test库的所有表 

 

    test.test_table  表示test库的test_table表  

     

用户名:  

     mysql账户名  

登陆主机:  

     允许登陆mysql server的客户端ip  

     '%'表示所有ip  


     'localhost' 表示本机  


     '192.168.10.2' 特定IP  

密码:  

      账户对应的登陆密码  

 

    4.2 例子


mysql>grant all  on test.* to lionbule@'%' identified by 'hello1234';  

mysql>flush privileges;  

    新增密码为‘hello234’的用户lionbule对test库拥有所有操作权限,并不限制lionbule用户的登陆IP。     

 




1、mysql默认安装后,生成一个super-user:root,密码为空,给root用户设置密码的方法很多

(1)mysqladmin -uroot password 'newpassword';

(2)update user set password='newpassword' where user='root'

2、如果不慎将root用户给删除了,可以尝试以下办法操作。

(1)、直接重新安装初始化数据库mysql,不会对数据库目录下/mysql/var/目录下其他数据库带来影响,

mysql_install_db --user=mysql,

然后重启

mysqld_safe --user=mysql &


(2)、尝试输入mysql --skip-grant-lables &,跳开权限认证,对mysql数据库中的user授权表进行操作,

insert into user (host,user,password,'','','','',''........)  values ('localhost,'root','root','','','','',''........);

3、  添加用户和设置权限

在安装MySql后只有一个超级管理权限的用户ROOT,而且ROOT限制只能在数据库本机上使用,如果我们要远程管理MySql咋办呢?那么事实上我们需要添加一个具有超级管理权限并且可能远程访问的超级用户,而在 MySql中有两种方法可以实现这个目的,我们以增加一个超级权限管理用户admin为例来说明。 

       你可以通过发出GRANT语句增加新用户:首先在数据库本机上用ROOT用户登录上MySql(不用我告诉你如何登录吧?),然后: 

mysql>GRANT ALL PRIVILEGES ON *.* TO admin@localhost IDENTIFIED BY 'something' WITH GRANT OPTION; 


mysql>GRANT ALL PRIVILEGES ON *.* TO admin@"%" IDENTIFIED BY 'something' WITH GRANT OPTION; 

第一句增加了一个admin用户授权通过本地机(localhost)访问,密码“something”。


第二句则是授与admin用户从任何其它主机发起的访问(通配符%)。 
       
        你也可以直接通过发出INSERT语句增加同样的用户存取信息: 


mysql>INSERT INTO user VALUES('localhost','admin',PASSWORD('something'), 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y') 


mysql>INSERT INTO user VALUES('%','admin',PASSWORD('something'), 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y') 

      取决于你的MySQL版本,对上述,你可能必须使用一个不同数目'Y'值(在3.22.11以前的版本有更少的权限列)。 

验证方法,在命令行中输入:mysql -h主机名或IP地址 -u用户名 -p密码 




SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;


show grants for 'cactiuser'@'%';   


select * from mysql.user where user='cactiuser' \G   










本文转自 chengxuyonghu 51CTO博客,原文链接:http://blog.51cto.com/6226001001/1557500,如需转载请自行联系原作者
相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
关系型数据库 MySQL 数据库
MySQL新增字段报错:ERROR 1118 -- Row size too large. The maximum row size for the used table type
MySQL新增字段报错:ERROR 1118 -- Row size too large. The maximum row size for the used table type
1478 0
|
3月前
|
关系型数据库 MySQL
MySQL用户相关-修改用户名及删除用户
MySQL用户相关-修改用户名及删除用户
28 0
|
9月前
|
SQL 安全 关系型数据库
php开发实战分析(8):mysql类库的操作高级使用API开发(字段操作、权限分配、日期格式、跨表查询,数据分表)
php开发实战分析(8):mysql类库的操作高级使用API开发(字段操作、权限分配、日期格式、跨表查询,数据分表)
300 0
|
存储 SQL 关系型数据库
mysql新增表或字段时判断是否存在
mysql新增表或字段时判断是否存在
865 0
|
关系型数据库 MySQL
MySQL - 新增一列和查找主键
MySQL - 新增一列和查找主键
62 0
|
SQL 关系型数据库 MySQL
【MySQL作业】DDL 和 DML——美和易思使用 DML 新增和更新表数据应用习题
【MySQL作业】DDL 和 DML——美和易思使用 DML 新增和更新表数据应用习题
161 0
【MySQL作业】DDL 和 DML——美和易思使用 DML 新增和更新表数据应用习题
|
关系型数据库 MySQL 数据安全/隐私保护
MySQL新增用户
MySQL新增用户
|
关系型数据库 MySQL 数据库
MySQL的权限分配
MySQL 赋予用户权限命令的简单格式可概括为:grant 权限 on 数据库对象 to 用户,如 GRANT PRIVILEGES ON datebase.* to user@'%' IDENTIFIED by 'passwd'; 一、给表数据赋权 grant 普通数据用户,查询、插入、更新、删除 数据库中所有表数据的权利。
2225 0
|
MySQL 关系型数据库
MySQL 在指定位置新增字段
版权声明:本文首发 http://asing1elife.com ,转载请注明出处。 https://blog.csdn.net/asing1elife/article/details/82732083 ...
2429 0