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 可以对任何类型的数据进行索引、查询和聚合分析,无论是文本、数字、地…

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

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

【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…

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

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

1.centos 镜像

centos 它有官网的下载地址:https://vault.centos.org/ 选择想要的版本,我选择 centos7.8 进入到镜像目录 isos 选择 x86_64 选择想要的版本,我选择 CentOS-7-x86_64-DVD-2003.iso 安装就正常安装就行。我选择虚拟机安装。这个参考&…

git的安装以及入门使用

文章目录 git的安装以及入门使用什么是git?git安装git官网 git初始化配置使用方式初始化配置: git的安装以及入门使用 什么是git? Git 是一个免费开源的分布式版本控制系统,使用特殊的仓库数据库记录文件变化。它记录每个文件的…

前端开发设计模式——状态模式

目录 一、状态模式的定义和特点 二、状态模式的结构与原理 1.结构: 2.原理: 三、状态模式的实现方式 四、状态模式的使用场景 1.按钮的不同状态: 2.页面加载状态: 3.用户登录状态: 五、状态模式的优点 1.提…

Matplotlib和Seaborn数据可视化

目录 Matplotlib图表绘制 准备工作 折线图line 柱状图bar 水平条形图barh 饼图pie 散点图scatter 气泡图csatter 箱线图boxplot 直方图hist 蜂巢图hexbin Seaborn图表绘制 准备数据 关系散点图scatterplot 关系散点线形图replot 分类散点图stripplot 分类小提…

Flink窗口分配器WindowAssigner

前言 Flink 数据流经过 keyBy 分组后,下一步就是 WindowAssigner。 WindowAssigner 定义了 stream 中的元素如何被分发到各个窗口,元素可以被分发到一个或多个窗口中,Flink 内置了常用的窗口分配器,包括:tumbling wi…

前缀和和差分算法

文章目录 一维前缀和一维前缀和概念一维前缀和数组的构建 二维前缀和二维前缀和概念二维前缀和数组的构建 一维差分一维差分概念一维差分数组的构建 二维差分二维差分概念二维差分数组的构建 一维前缀和 一维前缀和概念 一维前缀和是一种常用的数据预处理方法,它能…