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

简介:

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,如需转载请自行联系原作者
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
网络协议 关系型数据库 MySQL
mysql8.0远程连接权限设置
mysql8.0远程连接权限设置
842 0
|
Ubuntu 安全 关系型数据库
安装与配置MySQL 8 on Ubuntu,包括权限授予、数据库备份及远程连接指南
以上步骤提供了在Ubuntu上从头开始设置、配置、授权、备份及恢复一个基础但完整的MySQL环境所需知识点。
1365 7
|
关系型数据库 MySQL 数据库
mysql添加用户并设置数据库权限
mysql添加用户并设置数据库权限
400 1
|
SQL NoSQL 关系型数据库
|
存储 关系型数据库 MySQL
基于案例分析 MySQL 权限认证中的具体优先原则
【10月更文挑战第26天】本文通过具体案例分析了MySQL权限认证中的优先原则,包括全局权限、数据库级别权限和表级别权限的设置与优先级。全局权限优先于数据库级别权限,后者又优先于表级别权限。在权限冲突时,更严格的权限将被优先执行,确保数据库的安全性与资源合理分配。
431 4
|
关系型数据库 MySQL Docker
docker环境下mysql镜像启动后权限更改问题的解决
在Docker环境下运行MySQL容器时,权限问题是一个常见的困扰。通过正确设置目录和文件的权限,可以确保MySQL容器顺利启动并正常运行。本文提供了多种解决方案,包括在主机上设置正确的权限、使用Dockerfile和Docker Compose进行配置、在容器启动后手动更改权限以及使用 `init`脚本自动更改权限。根据实际情况选择合适的方法,可以有效解决MySQL容器启动后的权限问题。希望本文对您在Docker环境下运行MySQL容器有所帮助。
3191 1
|
安全 关系型数据库 MySQL
Navicat工具设置MySQL权限的操作指南
通过上述步骤,您可以使用Navicat有效地为MySQL数据库设置和管理用户权限,确保数据库的安全性和高效管理。这个过程简化了数据库权限管理,使其既直观又易于操作。
1930 4
|
关系型数据库 MySQL
MySQl优化:使用 jemalloc 分配内存
MySQl优化:使用 jemalloc 分配内存
|
安全 关系型数据库 MySQL
node实战——后端koa结合jwt连接mysql实现权限登录(node后端就业储备知识)
node实战——后端koa结合jwt连接mysql实现权限登录(node后端就业储备知识)
425 3
|
安全 关系型数据库 应用服务中间件
连接rds设置网络权限
连接阿里云RDS需关注:1) 设置白名单,允许特定IP访问;2) 选择合适网络类型,如VPC或经典网络;3) 确保VPC内路由与安全组规则正确;4) 同VPC内可使用内网地址连接;5) 可启用SSL/TLS加密增强安全性。记得遵循最小权限原则,确保数据库安全。不同服务商操作可能有差异,但基本流程相似。
985 9

推荐镜像

更多