当前位置: 首页 > news >正文

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 用户可以从任何地方连接时。通常建议根据需要为用户分配最小必要权限,以减少潜在的安全风险。

相关文章:

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

创建用户 默认的root用户只能当前节点localhost访问,是无法远程访问的,所以,我们要创建一个root账户,帮助用户远程访问。 create user root% IDENTIFIED WITH mysql_native_password BY 1234;这个命令是在MySQL数据库管理系统中…...

Godot

前言 为什么要研究开源引擎 主要原因有: 可以享受“信创”政策的红利,非常有利于承接政府项目。中美脱钩背景下,国家提出了“信创”政策。这个政策的核心就是,核心技术上自主可控。涉及的产业包括:芯片、操作系统、数据…...

【Docker】Docker与Kubernetes:区别与优势对比

前言 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。   kubernetes,简称K8s&a…...

通过内网穿透本地MariaDB数据库,实现在公网环境下使用navicat图形化工具

公网远程连接MariaDB数据库【cpolar内网穿透】 文章目录 公网远程连接MariaDB数据库【cpolar内网穿透】1. 配置MariaDB数据库1.1 安装MariaDB数据库1.2 测试局域网内远程连接 2. 内网穿透2.1 创建隧道映射2.2 测试随机地址公网远程访问3. 配置固定TCP端口地址3.1 保留一个固定的…...

1 Python实现23种计模式

23种计模式之Python实现(史上最全最通俗易懂) 第一篇 Python与设计模式:前言 第二篇(23种设计模式) 1 创建类设计模式(5种) 单例模式 工厂模式 简单工厂模式 抽象工厂模式 建造者模式 原型…...

力扣:179. 最大数(Python3)

题目: 给定一组非负整数 nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数。 注意:输出结果可能非常大,所以你需要返回一个字符串而不是整数。 来源:力扣(LeetCode…...

js逆向-某敏感网站登录参数分析

声明 本文仅供学习参考,如有侵权可私信本人删除,请勿用于其他途径,违者后果自负! 如果觉得文章对你有所帮助,可以给博主点击关注和收藏哦! 前言 目标网站:aHR0cHM6Ly9tZGZnaGcuNXhwb2lqaHRm…...

docker 安装常用环境

什么是容器 作为稍懂服务器的人都知道服务器是有系统的,一般来说是linux系统,我们可以在里边操作各种,比如说安装nginx、部署服务、数据库等。简单来说,容器理解成一个超精简的linux系统,可以进入这个系统进行安装各种…...

git clone慢的解决办法

在网站 https://www.ipaddress.com/ 分别搜索: github.global.ssl.fastly.net github.com 得到ip: 打开hosts文件 sudo vim /etc/hosts 在hosts文件末尾添加 140.82.114.3 github.com 151.101.1.194 github.global-ssl.fastly.net 151.101.65.194 g…...

Picasso网络原生PICA Token通过XCM集成进入Moonriver生态

波卡上的首选多链开发平台Moonbeam宣布Moonriver和Picasso(分别为Moonbeam和Composable Finance的Kusama对应平行链)已达成XCM集成。该集成将Picasso的PICA Token引入Moonriver生态系统使用,并允许用户在Picasso网络上使用MOVR。两条平行链都…...

STM32 CAN通信自定义数据包多帧连发乱序问题

场景: can标准帧中每一帧只能传输8字节,而应用中传输一包的内容往往超过8字节,因此需要把一个包拆成多个帧发送,接收端才把收到的多帧重新组装成一个完整的包 问题描述 在一问一答的两块板间通信,多帧连发是能够按照…...

STM32 配置中断常用库函数

单片机学习 目录 一、配置AFIO相关库函数 1.1函数GPIO_AFIODeInit 1.2函数GPIO_EventOutputConfig 1.3函数GPIO_EventOutputCmd 1.4函数GPIO_EXTILineConfig 二、配置EXTI相关库函数 2.1函数EXTI_DeInit 2.2函数EXTI_Init 2.3函数EXTI_StructInit 2.4函数 EXTI_Gener…...

性能测试常见的指标详解

一、什么是性能测试 性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。 我们可以认为性能测试是:通过在测试环境下对系统或构件的性能进行探测,用以验证在生产环境下系统性能是否达到预估的性能需求…...

【键盘变成了快捷键,怎么办?】

**最便捷的操作:**拔掉键盘有线插头,将键盘驱动进行卸载,重新插上键盘即可 键盘驱动如何卸载: 以win10为例,点击开始菜单栏选择设置 选择左上角系统 选择系统中,点击最下方关于,点击右侧的设备管理器 选…...

LeetCode Hot100 105.从前序与中序遍历序列构造二叉树

题目&#xff1a;给定两个整数数组 preorder 和 inorder &#xff0c;其中 preorder 是二叉树的先序遍历&#xff0c; inorder 是同一棵树的中序遍历&#xff0c;请构造二叉树并返回其根节点。 代码&#xff1a; class Solution {private Map<Integer, Integer> indexM…...

今天先水一章

水贴&#xff0c;可自动忽略...

网页设计作业-音乐网站首页

效果图 网盘链接 链接&#xff1a;https://pan.baidu.com/s/1CO4jAOY0zk1AWTx_pC3UmA?pwdfuck 提取码&#xff1a;fuck...

【2023 云栖】阿里云刘一鸣:Data+AI 时代大数据平台建设的思考与发布

云布道师 本文根据 2023 云栖大会演讲实录整理而成&#xff0c;演讲信息如下&#xff1a; 演讲人&#xff1a;刘一鸣 | 阿里云自研大数据产品负责人 演讲主题&#xff1a;DataAI 时代大数据平台应该如何建设 今天分享的主题是 DataAI 时代大数据平台应该如何建设&#xff0…...

【DP】mobiusp正在创作乐曲

输入样例1&#xff1a; 5 2 1 7 7 1 3 输出样例1&#xff1a; 2 输入样例2&#xff1a; 10 3 2 5 6 4 4 5 7 3 5 6 输出样例2&#xff1a; 1 #include<iostream> #include<cstring> #include<algorithm> #include<vector> using namespace std; typede…...

docker国内镜像加速

创建或修改 /etc/docker/daemon.json 文件&#xff0c;修改为如下形式 {"registry-mirrors": ["https://registry.docker-cn.com","http://hub-mirror.c.163.com","https://docker.mirrors.ustc.edu.cn"] } Docker中国区官方镜像htt…...

浅谈 React Hooks

React Hooks 是 React 16.8 引入的一组 API&#xff0c;用于在函数组件中使用 state 和其他 React 特性&#xff08;例如生命周期方法、context 等&#xff09;。Hooks 通过简洁的函数接口&#xff0c;解决了状态与 UI 的高度解耦&#xff0c;通过函数式编程范式实现更灵活 Rea…...

Ubuntu系统下交叉编译openssl

一、参考资料 OpenSSL&&libcurl库的交叉编译 - hesetone - 博客园 二、准备工作 1. 编译环境 宿主机&#xff1a;Ubuntu 20.04.6 LTSHost&#xff1a;ARM32位交叉编译器&#xff1a;arm-linux-gnueabihf-gcc-11.1.0 2. 设置交叉编译工具链 在交叉编译之前&#x…...

从零实现STL哈希容器:unordered_map/unordered_set封装详解

本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说&#xff0c;直接开始吧&#xff01; 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...

GitHub 趋势日报 (2025年06月08日)

&#x1f4ca; 由 TrendForge 系统生成 | &#x1f310; https://trendforge.devlive.org/ &#x1f310; 本日报中的项目描述已自动翻译为中文 &#x1f4c8; 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...

如何理解 IP 数据报中的 TTL?

目录 前言理解 前言 面试灵魂一问&#xff1a;说说对 IP 数据报中 TTL 的理解&#xff1f;我们都知道&#xff0c;IP 数据报由首部和数据两部分组成&#xff0c;首部又分为两部分&#xff1a;固定部分和可变部分&#xff0c;共占 20 字节&#xff0c;而即将讨论的 TTL 就位于首…...

深度学习习题2

1.如果增加神经网络的宽度&#xff0c;精确度会增加到一个特定阈值后&#xff0c;便开始降低。造成这一现象的可能原因是什么&#xff1f; A、即使增加卷积核的数量&#xff0c;只有少部分的核会被用作预测 B、当卷积核数量增加时&#xff0c;神经网络的预测能力会降低 C、当卷…...

2025季度云服务器排行榜

在全球云服务器市场&#xff0c;各厂商的排名和地位并非一成不变&#xff0c;而是由其独特的优势、战略布局和市场适应性共同决定的。以下是根据2025年市场趋势&#xff0c;对主要云服务器厂商在排行榜中占据重要位置的原因和优势进行深度分析&#xff1a; 一、全球“三巨头”…...

Java编程之桥接模式

定义 桥接模式&#xff08;Bridge Pattern&#xff09;属于结构型设计模式&#xff0c;它的核心意图是将抽象部分与实现部分分离&#xff0c;使它们可以独立地变化。这种模式通过组合关系来替代继承关系&#xff0c;从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...

TSN交换机正在重构工业网络,PROFINET和EtherCAT会被取代吗?

在工业自动化持续演进的今天&#xff0c;通信网络的角色正变得愈发关键。 2025年6月6日&#xff0c;为期三天的华南国际工业博览会在深圳国际会展中心&#xff08;宝安&#xff09;圆满落幕。作为国内工业通信领域的技术型企业&#xff0c;光路科技&#xff08;Fiberroad&…...

认识CMake并使用CMake构建自己的第一个项目

1.CMake的作用和优势 跨平台支持&#xff1a;CMake支持多种操作系统和编译器&#xff0c;使用同一份构建配置可以在不同的环境中使用 简化配置&#xff1a;通过CMakeLists.txt文件&#xff0c;用户可以定义项目结构、依赖项、编译选项等&#xff0c;无需手动编写复杂的构建脚本…...