MySQL- 创建可以远程访问的root账户

创建用户

默认的root用户只能当前节点localhost访问,是无法远程访问的,所以,我们要创建一个root账户,帮助用户远程访问。

create user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '1234';

这个命令是在MySQL数据库管理系统中用来创建一个新用户的SQL语句。

让我们详细看看该命令的各个组成部分:

  1. CREATE USER:这是SQL语句的开始,用于告诉MySQL我们要创建一个新用户。

  2. 'root'@'%':这部分定义了新用户的用户名和它可以从哪里连接到MySQL服务器。

    • 'root':这是新用户的用户名。在MySQL中,root通常是超级用户,拥有对所有数据库和表的完全访问权限。
    • '%':这表示用户可以从任何IP地址连接到MySQL服务器。如果我们想限制用户只能从特定的IP地址或域名连接,可以将%替换为具体的IP地址或域名。
  3. IDENTIFIED WITH mysql_native_password:这部分指定了用于认证用户的插件或机制。

    • mysql_native_password:这是一种认证方法,它告诉MySQL使用传统的方法来存储和验证用户密码。这是MySQL中较旧版本的标准认证方法。
  4. BY '1234':这部分设置了用户的密码。

    • '1234':这是用户的密码。在实际情况中,应该使用更强的密码来提高安全性。

综上所述,这个命令创建了一个名为root的新用户,这个用户可以从任何IP地址连接到MySQL服务器,并使用mysql_native_password作为认证方法,其密码设置为1234

请注意,使用root用户和弱密码(如示例中的’1234’)可能会带来安全风险。在生产环境中,建议使用更安全的用户名和强密码,并限制用户的连接IP地址以增强安全性。此外,MySQL的新版本可能使用不同的默认认证插件(如caching_sha2_password),因此在不同版本的MySQL中,命令的具体格式可能有所不同。


在 MySQL 8.0 版本中,创建用户的命令略有不同,主要是因为默认的身份验证插件从 mysql_native_password 更改为了 caching_sha2_password。下面是针对 MySQL 8.0 的修改后的命令:

CREATE USER 'root'@'%' IDENTIFIED WITH 'caching_sha2_password' BY '1234';

让我们详细看看该命令的各个组成部分:

  1. CREATE USER: 这是 SQL 语句的开始,用于通知 MySQL 我们要创建一个新用户。

  2. 'root'@'%': 定义了新用户的用户名和它可以从哪里连接到 MySQL 服务器。

    • 'root' 是新用户的用户名。在 MySQL 中,root 通常是具有所有权限的超级用户。
    • '%' 表示用户可以从任何 IP 地址连接到 MySQL 服务器。如果想限制用户仅能从特定的 IP 地址或域名连接,可以将 % 替换为具体的 IP 地址或域名。
  3. IDENTIFIED WITH 'caching_sha2_password': 指定用于身份验证的插件。

    • 'caching_sha2_password' 是 MySQL 8.0 中的默认身份验证插件,它提供了比 mysql_native_password 更高的安全性。
  4. BY '1234': 设置用户的密码。

    • '1234' 是用户的密码。在实际环境中,应使用更强的密码来提高安全性。

这个命令创建了一个名为 root 的新用户,允许它从任何 IP 地址连接到 MySQL 服务器,使用 caching_sha2_password 作为身份验证方法,密码设置为 1234

请注意,为了安全起见,不建议使用 root 用户名或弱密码(如示例中的 ‘1234’),特别是在生产环境中。同时,应该考虑限制用户的连接源地址以增强安全性。根据我们的 MySQL 配置和需求,可能需要启用或配置 caching_sha2_password 插件,以确保兼容性和安全性。

给root用户分配权限

GRANT ALL ON *.* TO 'root'@'%';

这个 SQL 命令是在 MySQL 数据库中用于授权的一个常见命令。让我们逐个分析这个命令的各个部分:

  1. GRANT ALL: 这部分是命令的核心。GRANT 是用来授予用户权限的 SQL 命令。ALL 表示授予所有的权限。这意味着执行这个命令后,用户将获得对数据库的所有操作权限,包括创建、读取、更新、删除数据,以及管理数据库的能力。

  2. ON *.*: 这部分指定了权限的应用范围。

    • 第一个 * 代表所有的数据库。
    • 第二个 * 代表数据库中的所有表。
    • 所以,*.* 表示对所有数据库及其中的所有表授予权限。
  3. TO 'root'@'%': 这部分指定了将权限授予给哪个用户,以及该用户可以从哪里连接到 MySQL 服务器。

    • 'root' 是用户的用户名,在这里是 MySQL 的超级用户。
    • '%' 表示用户可以从任何 IP 地址连接到 MySQL 服务器。如果需要限制用户只能从特定的 IP 地址或域名连接,可以将 % 替换为具体的 IP 地址或域名。

总结一下,命令 GRANT ALL ON *.* TO 'root'@'%'; 的含义是:授予用户名为 root 的用户,从任何 IP 地址连接到 MySQL 服务器时,对所有数据库和所有表的全部权限。

请注意,这种授权非常广泛,会给用户非常高的权限水平,包括修改数据库结构、访问和修改所有数据、管理用户权限等。在生产环境中,这样的权限通常只授予非常可信的管理员,因为它可能会导致安全风险,尤其是当 root 用户可以从任何地方连接时。通常建议根据需要为用户分配最小必要权限,以减少潜在的安全风险。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/170043.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C++那些事儿】类与对象(3)

君兮_的个人主页 即使走的再远,也勿忘启程时的初心 C/C 游戏开发 Hello,米娜桑们,这里是君兮_,我之前看过一套书叫做《明朝那些事儿》,把本来枯燥的历史讲的生动有趣。而C作为一门接近底层的语言,无疑是抽象且难度颇…

为什么 MQTT 对于构建联网汽车至关重要

汽车行业正在接受构建联网汽车的想法。他们看到了利用车辆遥测数据创造新收入机会并打造更好用户体验的机会。然而,实施可扩展以支持数百万辆汽车的联网汽车服务可能会带来一些挑战。 对于大多数联网汽车服务,汽车和云之间需要进行双向通信。汽车将遥测…

Redis:事务操作

目录 Redis事务定义相关命令事务的错误处事务冲突的问题Redis事务三特性 Redis事务定义 redis事务是一个单独的隔离操作,事务中的所有命令都会序列化、按顺序地执行,事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。 redis事务…

VCenter连接主机提示:未验证主机SSL证书的真实性

问题:VCenter主机断开连接了,重新连接主机报错SSL证书问题 移除重新加入ESXI6.0节点报错常规系统错误(如下图) 解决方案:需更改一下验证方式 VCenter Serevr设置→高级设置 将项cpxd.certmgmt.mode 值 vmca 改为&…

《微信小程序从入门到精通》---笔记1

小程序,我又来学习啦!请多关照~ 项目驱动 小程序开发建议使用flex布局在小程序中,页面渲染和业务逻辑是分开的,分别运行在不同的线程中。Mini Program于2017年1月7号正式上线小程序的有点:跨平台、开发门槛低、开发周…

VS2022的props配置

最近在点云处理项目过程中,使用了PCL库,遇到了需要在多个vs工程中导入相同库的问题。每次新建项目都要配置很多include文件路径,导入一堆.lib文件,非常头疼,可以通过props属性表来解决这个问题。 一、什么是props属性…

Gin 学习笔记01-数据返回

Gin 数据返回 1、返回 string 和 json2、返回 xml 和 ymal3、返回html4、重定向 1、返回 string 和 json c.String()c.JSON() package mainimport ("github.com/gin-gonic/gin""net/http" )func getJSON(c *gin.Context) {//c.String(http.StatusOK, &qu…

紧急救援【Dijkstra】

作为一个城市的应急救援队伍的负责人,你有一张特殊的全国地图。在地图上显示有多个分散的城市和一些连接城市的快速道路。每个城市的救援队数量和每一条连接两个城市的快速道路长度都标在地图上。当其他城市有紧急求助电话给你的时候,你的任务是带领你的…

图书管理系统源码,图书管理系统开发,图书借阅系统源码SqlHelper数据库访问操作方法简述

SqlHelper 是封装了数据库操作方法的类库,使用它我们可以链接数据库操作数据库表数据增删改查,其中主要SqlConnection ,ExecuteNonQuery,ExecuteScalar,ExecuteDataTable四个主要方法SqlConnection负责根据访问配置文件web.config中connstr链接数据库字符串去打开数据库,…

电机应用-直流有刷电机多环控制实现

目录 直流有刷电机多环控制实现 硬件设计 直流电机三环(速度环、电流环、位置环)串级PID控制-位置式PID 编程要点 配置ADC可读取电流值 配置基本定时器6产生定时中断读取当前电路中驱动电机的电流值并执行PID运算 配置定时器1输出PWM控制电机 配…

图书管理系统源码,图书管理系统开发,图书借阅系统源码二表字段注释说明

图书管理系统源码数据库表设计说明 数据库名:TuShuManger 用户管理员表 表名:AdminUser 序号 列名 数据类型 长度 小数位 标识 主键 外键 允许空 默认值 说明 1 Id int 4 0 是 是 否 2 username nvarchar 0 0 是 用户名 3 password nvarchar 0 0 是 密码 4 qq nvarchar 0 0…

【Mybatis】基础增删改查

一.创建SpringBoot项目 创建新项目需要添加的依赖 当然如果是以前的项目也可以直接在pom.xml文件中添加依赖: MySQL Driver依赖 <dependency><groupId>com.mysql</groupId><artifactId>mysql-connector-j</artifactId><scope>runtime</…

基于vue+element-plus+echarts编写动态绘图页面

我们都知道网页的echarts可以画图&#xff0c;但是很多情况下都需要编码实现绘图逻辑&#xff0c;如果有一个前端页面可以让我输入数据然后动态生成图表的话那么该多好&#xff0c;其实这个需求不难实现&#xff0c;先看效果。 整体页面分为左右两个部分&#xff0c;其中左边的…

Node.js入门指南(二)

目录 http模块 创建http服务端 浏览器查看 HTTP 报文 获取 HTTP 请求报文 设置响应报文 网页资源的基本加载过程 静态资源服务 hello,大家好&#xff01;上一篇文章我们对Node.js进行了初步的了解&#xff0c;并介绍了Node.js的Buffer、fs模块以及path模块。这一篇文章主…

计算机毕业设计 基于SpringBoot的物业管理系统的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍&#xff1a;✌从事软件开发10年之余&#xff0c;专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精…

2001-2022年上市公-供应链话语权测算数据(原始数据+处理代码Stata do文档+结果)

2001-2022年上市公-供应链话语权测算数据&#xff08;原始数据处理代码Stata do文档结果&#xff09; 1、时间&#xff1a;2001-2022年 2、指标&#xff1a;企业代码、股票代码、年份、股票简称、上市公司前五大供应商的采购额之和占企业当年总采购额的比例、上市公司前五大客…

vue-element-ui学习教程

Vue Element Admin Vue Element Admin

C语言猜素数(ZZULIOJ1292:猜素数)

题目描述 Lx给Xp出了一道难题&#xff0c;随便在0和1000000之间抽出两个数&#xff0c;估计在这两个数之间的素数的个数&#xff0c;如果猜测的结果和正确结果一样&#xff0c;Xp就可以得到Lx的一件礼物&#xff0c;你能猜对吗&#xff1f;编程实现一下吧&#xff01; 输入&…

​root账号登录群晖NAS教程​

用WinSCPPuTTY以root账号登录群晖NAS保姆教程用WinSCPPuTTY可SecureCRT 以root账号登录群晖NAS 1、先用自己的用户名 密码登陆。 2、切换到root权限 输入sudo -i,按回车,然后也是输入群辉登录的密码。成功之后,显示$ 变成 #号

Kafka(一):在WSL单机搭建Kafka伪集群

目录 1 运行Kafka单实例1.1 Windws1.1.1 安装包下载1.1.2 修改环境变量1.1.3 修改配置文件1.1.4 启动Kafka单机版 1.2 Linux1.2.1 安装包下载1.2.2 创建目录1.2.3 添加环境变量1.2.4 修改配置文件1.2.5 运行Kafka1.2.6 停止Kafka 2 搭建Kafka集群2.1 搭建Zookeeper集群2.2 搭建…