Mysql 和MongoDB用户访问权限问题

Mysql

刚给二线运维排查了一个问题,Mysql安装完可用,且可用navicat连接,项目中通过127.0.0.1去连数据库报错了。错误是access denied for user ‘root’@localhost,排查思路

1. 密码是否正确

(不需要重置。到Mysql的安装目录下找到my.ini,在Mysqld 后添加skip-grant-tables,这样可不用密码登陆。eg: mysql -uroot -p; )

1. 进入mysql安装目录,找到my.ini
2. 在[mysqld] 后面敲入:skip-grant-tables
3. 重启服务, net stop mysqld;net start msyqld
4.  通过命令进行密码修改:alter user root@'localhost' identified by 'testByZl*!1234';
5. 删除掉my.ini中添加的skip-grant-tables; 并完成mysql重启,参考3步即可

2.授权问题

数据库安装好,建完用户后,需要对用户进行权限授予,目的是让用户对数据库有一系列执行操作,包括但不限于DDL语句和SQL语句。授权通常用到下面语句

GRANT ALL PRIVILEGES ON *.* TO 'usrname'@'localhost' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;

今天遇到的问题是第二个问题导致的。未授权,解决该问题用到的语句为

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'  IDENTIFIED BY 'password';
FLUSH PRIVILEGES;

接下来说一下%和localhost区别
【本地主机限制】grant all privileges on . to ‘usename’@‘localhost’

【任意主机允许】grant all privileges on . to ‘usename’@‘%’
它两区别在于 第一个连接为本地主机限制,用户仅被 授权从本地主机(即Mysql所在的服务器)访问数据 库。这种限制用于提高数据库的安全性。 第二个连接%是通配符,表示用户可以从八喜何IP地址访问数据库,允许远程客户端访问数据库。

Mongo 连接报 Authentication failed

在这里插入图片描述

Mongo创建好后,也是需要给用户授权的,不然只是单独create user后访问库也会报Authentication failed。下面创建用户及授权用户大致整理如下所示:

Mongo 创建用户

use calamity
db.createUser({user: "calamity",pwd: "Gq40H1%44W%44nHy",roles: [ { role: "readWrite", db: "calamity" }]}
)

mongo 授权用户

需要组当前用户授予admin库的只读权限,这样才能通过admin库进行业务库的授权。因些需要执行以下语句

db.grantRolesToUser("calamity",[{ role: "read", db: "admin" }]
)

Mongo库restore操作

需要测试数据,导了个tar包,打开看都是bson、json 文件,需要把相应的文件copy到mongo 安装路径下的db下面,可以通过mongorestore执行。我先是把tar包解压缩了,然后将其目录下文件转成.gz文件,然后执行了mongoresote命令。分别如下所示:

1.tar 解压缩

tar -xvf calamity.tar

2. 转在gz文件

之所以有这步,是因为这前存的restore命令是针对.gz文件的,懒于重新编辑命令,所以闭着眼睛执行了这步操作

 gzip -r calamity  # calamity是解tar后的文件夹 -r 是说将其下的所有文件打成gz

3. mongorestore执行

mongorestore --uri="mongodb://calamity:Gq40H1%44W%44nHy@ip1:27017,ip2:27017,ip3:27017/?replicaSet=rs0&authSource=calamity"  -d calamity  /home/data/db --gzip

其它 mongorestoe 其它命令参考

//压缩备份
mongodump -u csms -p Sh%2523mkaJaaa11 --authenticationDatabase csms -d csms -o /home/backup --gzip
mongodump -u csms -p csms --authenticationDatabase csms -d csms -c  zl.position_history_202212 -o /home/backup --gzip//恢复还原
mongorestore -u csms -p Sh%2523mkaJaaa11 --authenticationDatabase csms -d csms  /home/backup/csms --gzip
mongorestore --uri="mongodb://admin:Sh%2523mkaJaaa11 @192.168.1.1:27027192.168.1.12:27027,192.168.1.13:27027/?authSource=admin&replicaSet=dev_rs0" -d csms_lgyz  /home/backup/csms --gzip
mongorestore --uri="mongodb://admin:Sh%2523mkaJaaa11 @192.168.1.1:27027192.168.1.12:27027,192.168.1.13:27027/?authSource=admin&replicaSet=dev_rs0" -d csms_lgyz -c cmss.analog_minute_his_202307  /home/backup/csms/cmss.analog_minute_his_202307.bson.gz --gzip

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

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

相关文章

软件I2C的代码

I2C的函数 GPIO的配置——scl和sda都配置为开漏输出 void MyI2C_Init(void) {RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);GPIO_InitTypeDef GPIO_InitStruture;GPIO_InitStruture.GPIO_Mode GPIO_Mode_Out_OD;GPIO_InitStruture.GPIO_PinGPIO_Pin_10 | GPIO_Pin_…

Linux服务器前后端项目部署vue+springboot—搭建服务器上的运行环境(JDK、Redis、MySQL、Nginx)

Linux服务器前后端项目部署—①搭建服务器上的运行环境 一、系统参数信息和使用工具 1、服务器信息 华为云 CenteOS7.8 64 配置信息:2核4G 2、使用工具 Xshell6 二、环境安装和配置 (一)JDK的下载和安装 1、创建一个新目录或者进入目…

Spring event实战

什么是spring event? Spring Event 是 Spring 框架提供的一种事件驱动编程模型。它允许应用程序中的组件通过发布和监听事件来进行松耦合的交互。这种机制基于观察者设计模式,其中组件可以扮演事件发布者的角色,而其他组件则作为事件监听器来…

UEFI BIOSAPP编程开发查询手册.pdf

UEFI BIOS&APP编程开发查询手册.pdf 独家整理推荐。 享受, 半年免费更新服务, 一年免费咨询服务。

django5入门【03】新建一个hello界面

注意 ⭐前提:将上节的项目导入到pycharm中操作步骤总结: 1、HelloDjango/HelloDjango目录下,新建一个views.py 2、HelloDjango/HelloDjango/urls.py 文件中,配置url路由信息 3、新建终端,执行运行命令python manag…

RuoYi-Vue若依 环境搭建 速成

一、若依简介 RuoYi-Vue 是一个开源的后台管理系统,适用于快速开发企业级应用。该平台由两部分组成:前端和后端。 (1)技术框架 前端技术: Vue.js: 前端框架使用 Vue.js,这是一种流行的JavaScript框架&a…

[实时计算flink]基于Paimon的数据库实时入湖快速入门

Apache Paimon是一种流批统一的湖存储格式,支持高吞吐的写入和低延迟的查询。本文通过Paimon Catalog和MySQL连接器,将云数据库RDS中的订单数据和表结构变更导入Paimon表中,并使用Flink对Paimon表进行简单分析。 背景信息 Apache Paimon是一…

(46)MATLAB仿真从正弦波转换为方波

文章目录 前言一、MATLAB代码二、仿真结果画图三、吉布斯效应 前言 本文使用MATLAB仿真的方法,给出从正弦波转换为方波的过程,说明方波的傅里叶级数展开式是如何由奇次谐波的和构成的。另外,说明了在此过程中的吉布斯效应。 一、MATLAB代码 …

pm2 部署vue

1、为什么要使用pm2运行vue项目 为什么!!!我们一般是将打出来的DIST目录上传到服务器发布即可,为啥我会使用PM2来运行部署呢? 前提:vue2mysqlexpress不使用中间服务器,即不要后端人员开发接口服…

Bands Page 乐队页面

“带区”页面提供了用于添加和删除带区、自定义带区设置以及更改带区和列布局的设计时工具。此页面如下图所示。 该页面说明了一个预览部分、一个用于访问所选频段设置的属性网格以及一组按钮,这些按钮提供了下面列表中描述的功能。 添加新乐队…- 创建新带。创建新…

Elasticsearch使用实战以及代码详解

Elasticsearch 是一个使用 Java 语言编写、遵守 Apache 协议、支持 RESTful 风格的分布式全文搜索和分析引擎,它基于 Lucene 库构建,并提供多种语言的 API。Elasticsearch 可以对任何类型的数据进行索引、查询和聚合分析,无论是文本、数字、地…

C++学习,标准库 <ctime>

C 标准库提供了丰富的功能&#xff0c;其中 <ctime> 是处理时间和日期的标准库之一。它提供了一组函数&#xff0c;用于获取当前时间、日期以及执行时间相关的计算。<ctime> 库定义了一组与时间相关的函数和类型&#xff0c;这些函数和类型允许程序员在程序中处理时…

四、Linux 基本命令全攻略

Linux 基本命令全攻略 在 Linux 系统的世界里&#xff0c;掌握基本命令是至关重要的。不同的 Linux 发行版虽然在某些方面可能有所差异&#xff0c;但大部分基本命令是通用的。下面将按不同的系统分类&#xff0c;为大家详细介绍一些常用的 Linux 基本命令及其含义。 一、Ubu…

DeepSpeed性能调优与常见问题解决方案

1. 引言 什么是DeepSpeed&#xff1f; DeepSpeed是由微软开源的深度学习训练优化库&#xff0c;旨在帮助研究人员和工程师高效地训练大规模深度学习模型。基于PyTorch框架&#xff0c;DeepSpeed提供了一系列先进的技术&#xff0c;如ZeRO&#xff08;Zero Redundancy Optimiz…

【论文学习与撰写】,论文word文档中出现乱码的情况,文档中显示的乱码,都是英文字母之类的,但打印预览是正常的

目录 1、问题 2、解决方法 1、问题 写论文的时候&#xff0c;有时会出现乱码的情况&#xff0c; 如下图&#xff0c;这种情况&#xff0c; 可是 在打印预览的时候&#xff0c;就显示的正常 如下图&#xff0c; 2、解决方法 既然是文档正文显示错误&#xff0c;显示乱码&…

JAVA集合知识总结(六)

文章目录 JAVA集合知识总结(六)Queue1. Queue 接口2. Queue 常用方法3. Queue 的实现类介绍3.1 LinkedList3.2 PriorityQueue3.3 阻塞队列&#xff08;BlockingQueue&#xff09;3.4 Deque&#xff08;双端队列&#xff09; 4. 应用场景总结 JAVA集合知识总结(六) Queue Queue…

【HarmonyOS NEXT】服务端向终端推送消息——获取Push Token

【需求】 获取Push Token 【文档】 https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/push-get-token-V5 【代码】 // EntryAbility.ets 文件 import { pushService } from kit.PushKit; export default class EntryAbility extends UIAbility {onCreat…

vue实现html转化pdf功能,pdf文件可以复制文字

之前使用 html2canvas 和 jsPDF 实现html转pdf&#xff0c;但是客户说不能复制pdf中的文字&#xff0c;要改一下&#xff0c;先说不能复制的方法&#xff0c;再说可以复制的方法 一&#xff0c;html2canvas 和 jsPDF&#xff08;图片插入pdf不可复制&#xff09; 创建pdf.js文…

【详解】下载MySql安装教程(帮助数据库下载)

此版本是我下载的版本&#xff0c;其他版本均可以。 1.官网下载相应的版本&#xff1a;MYSQL&#xff1a;8.0.33 https://www.mysql.com/ 2.点击DOWNLOADS进入 3.在上述界面当中往下翻&#xff0c;找到社区版的下载界面 4.点进社区版的界面 前三个是Linux系统下的安装&a…

Mysql索引失效的原因有哪些?

&#x1f4da; 避免索引失效是一种常见的SQL优化 MySQL是一种关系型数据库&#xff0c;它可以通过建立索引来提高查询效率。索引是一种数据结构&#xff0c;它可以让数据库快速地找到满足条件的记录&#xff0c;而不需要扫描整张表。但是&#xff0c;并不是所有的查询都能利用索…