首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

MySQL设置数据库只读

前言: 默认情况下,我们的 MySQL 实例是可读写的。但有些情况下,我们可以将整个实例设置为只读状态,比如做迁移维护的时候或者将从库设为只读。本篇文章我们来看下 MySQL 设置只读相关知识。...,开启后会阻止没有 super 权限的用户执行数据库变更操作。...super_read_only 参数同样默认关闭,开启后不仅会阻止普通用户,也会阻止具有 super 权限的用户数据库进行变更操作。...执行此命令会给数据库加全局读锁,使得数据库处于只读状态,以下语句会被阻塞:数据更新语句(增删改)、数据定义语句(建表、修改表结构等)和更新类事务的提交语句。...总结: 本篇文章主要介绍了 MySQL 只读状态相关知识,其实除了从库外,其余实例很少设置全局只读,只是遇到某种需求的情况下需要将数据库设为只读状态,写本篇文章的目的也是遇到此类需求时,可以有个参考。

7.4K10
您找到你想要的搜索结果了吗?
是的
没有找到

如何给指定数据库创建只读用户

在SQL Server 中,为了保护数据库的安全,需要给不同的使用者开通不同的访问用户,那么如何简单的控制用户的权限呢?下面我们就创建一个只读用户,给大家学习使用。...创建访问指定数据库只读用户 1、首先打开【Microsoft SQLServer Management Studio】,用管理员账户登录。...针对每一个数据库,在下方【数据库角色成员身份】中,选择【db_datareader】,同时默认架构中也选择【db_datareader】 6、这样,一个只读用户就建立好了,用此用户登录时,就只能对映射的数据库进行只读访问了...添加只读用户查看存储过程权限 而当我们设置只给某些用户授权只读权限时(即public),这些用户可能需要查看sql的存储过程;因此需要授权给它。...”选择该用户可以操作的数据库 5、在“数据库角色成员身份”里选择"db_datareader" 6、这样一个只读用户就创建完成了。

10810

MySQL添加新用户、为用户创建数据库、为新用户分配权限

登录MySQL [root@VM_0_2_33_CentOS /]#mysql -u root -p 添加新用户 允许本地 IP 访问 localhost, 127.0.0.1 mysql>create...'123456'; 刷新授权 mysql>flush privileges; 为用户创建数据库 mysql>create database test DEFAULT CHARSET utf8 COLLATE...utf8_general_ci; 为新用户分配权限 授予用户通过外网IP对于该数据库的全部权限 mysql>grant all privileges on `testdb`.* to 'test'@'...%' identified by '123456'; 授予用户在本地服务器对该数据库的全部权限 mysql>grant all privileges on `testdb`.* to 'test'@'localhost...' identified by '123456'; 刷新权限 mysql>flush privileges; 退出 root 重新登录 mysql> exit; 用新帐号 test 重新登录,由于使用的是

2.9K50

Mysql 只读模式设置

一、常见现象 运维工作中会经常维护MySQL主从服务器,当然Slave我们只是用于读操作。一般权限开通也只授权只读账号,但是有时候维护工作可能不是一个人在做,你不能保证其他同事都按照这个标准操作。...还有一种情况是主从做了对所有数据的同步(包括用户信息),在Master库上面授权的账号也同步到了Slave库上面,当然Master账号中肯定会有select,update,insert,delete权限...为了避免上述问题,我们需要给MySQL的Slave设置为只读模式。...三、解决方法 3-1 只读模式 演示如下: mysql> set global read_only=1; Query OK, 0 rows affected (0.00 sec) #set global...read_only=0 为取消普通账号的只读模式 授权普通MySQL测试账号 mysql> grant select,insert,update,delete on s18.* to 'test'@

4.1K40

SQL 中如何给指定数据库创建只读用户

在SQL Server 中,为了保护数据库的安全,需要给不同的使用者开通不同的访问用户,那么如何简单的控制用户的权限呢?下面我们就创建一个只读用户,给大家学习使用。...创建访问指定数据库只读用户 1、首先打开【Microsoft SQLServer Management Studio】,用管理员账户登录。...针对每一个数据库,在下方【数据库角色成员身份】中,选择【db_datareader】,同时默认架构中也选择【db_datareader】 6、这样,一个只读用户就建立好了,用此用户登录时,就只能对映射的数据库进行只读访问了...添加只读用户查看存储过程权限 而当我们设置只给某些用户授权只读权限时(即public),这些用户可能需要查看sql的存储过程;因此需要授权给它。...”选择该用户可以操作的数据库 5、在“数据库角色成员身份”里选择"db_datareader" 6、这样一个只读用户就创建完成了。

3.8K20

mysql用户创建+密码修改+删除用户+角色分配 的正确姿势 实践笔记

挂在github上的个人博客:由hexo强力驱动 个人博客 环境:当前mysql版本 mysql> select version(); +------------+ | version() |...,UPDATE等,如果要授予所的权限则使用ALL databasename:数据库名 tablename:表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示,如*.* 举个栗子: 给予...INSERT,UPDATE等,如果要授予所的权限则使用ALL databasename:数据库名 tablename:表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示,如*.* 举个栗子...FROM ‘zhangsan’@’%’;命令并不能撤销该用户对test数据库中user表的SELECT 操作。 相反,如果授权使用的是GRANT SELECT ON ....TO ‘zhangsan’@’%’;则REVOKE SELECT ON bilibili.a FROM ‘zhangsan’@’%’;命令也不能撤销该用户对test数据库中user表的Select权限。

82041

MySQL InnoDB Cluster Read Replicas(只读副本)

MySQL Shell 8.1与MySQL 8.1 同日发行,在这个创新版里,MySQL Shell推出了一个新的功能——MySQL InnoDB Cluster Read Replicas,为InnoDB...通过该功能,用户可以分散集群的工作负载,将数据的读取从InnoDB Cluster分散到一个或多个只读副本上,并为InnoDB Cluster提供额外的数据副本。...Cluster.addReplicaInstance('host4:4110', {label: 'RReplica1', replicationSources: ['host2:4101','host3:4102']]}) 当用户部署一个新的只读副本时...,删除只读副本时,首先,会删除用于从InnoDB Cluster中进行复制的用户,其次,会删除该副本的元数据,最后,停止复制通道,重置该副本的相关变量值。...InnoDB Cluster Read Replicas的推出,为MySQL又增加了一个高可用性解决方案,用户可以通过它实现读写分离,保存多个数据副本等目的,在一些场景的应用上,又多了一个选择。

21040

新特性解读 | MySQL 8.0 支持对单个数据库设置只读

1新特性概要 对单个数据库设置只读状态,可以通过 ALTER DATABASE 语句中的 READ ONLY 选项来实现,该选项在 MySQL 8.0.22 版本[1] 中引入,用于控制是否允许对数据库及其对象...2使用方法 以设置数据库 lfq 为只读状态举例,可以观测到修改数据库只读状态对已建立连接的用户是立即生效的(即:session1 修改 lfq 数据库只读,session2 中 lfq 的只读状态是立即生效的...) #session1,再次查一下数据库只读状态,OPTIONS值为“READ ONLY=1”,数据库只读状态修改成功 MySQL localhost:3000 ssl SQL > SELECT...#session2,查询数据库只读状态,数据库只读状态,session1修改lfq数据库只读,session2中lfq的只读状态是立即生效的 MySQL localhost:3000 ssl...备份只读数据库,通过备份文件恢复出来的数据库不是只读的,如果恢复后需要只读,则需要手动执行 ALTER DATABASE 语句设置数据库只读

26710

组策略安全-用户权限分配

组策略(Group Policy)是Microsoft Windows系统管理员为用户和计算机定义并控制程序、网络资源及操作系统行为的主要工具。通过使用组策略可以设置各种软件、计算机和用户策略。...【实验步骤】 网络拓扑:server2008AD windows server 2008 用户:administrator 密码:Admin123 第一步:点击启动选项,启动实验虚拟机。...在组策略管理界面中点击林:test.com,在域中点击test.com,找到Defult domain policy,右键选择强制,点击后选择编辑,进入到组策略管理编辑器 第五步:在组策略管理编辑器中打开用户权限分配...(路径为计算机配置/策略/windows设置/安全设置/本地策略/用户权限分配) 第六步:打开active direstory 用户和计算机,创建两个用户例如test1,test2 第七步:在组策略管理界面编辑器中...第十步:切换用户为test2,看查是否可以关机。

1.8K00

用户 一对多分配 PHP

我这边有一个业务需求,就是有两种用户类别(第二种类别用户数远超第一类用户),然后需要根据他们所选的偏好和地区来进行匹配。...label:'userB2', type:2, like:"4", like2:"7" city:"6"},...分配的时候就需要根据他们所选择的偏好来进行匹配,匹配规则:1....每一个A类用户最多不能匹配超过5个B类用户,如果B类用户实在多,所有匹配的A类用户都匹配了5个时,继续1、2步骤进行分配直到所有B类用户分配完成。...我说让他把A类用户按照 like 分组,添加 count 属性并以此排序,然后用B类用户一个一个去分配,如果分配成功就把对应的A类用户 count++,跑完全部 B类用户 不就好了。...但是他说不行,最后第三条规则他处理不来,最多做到不限数量分配,但是我没有 Get 到为啥不行的点,可能 Js 的编程思路和 PHP 的有点差异吧...也许是可能会出现某一个A用户选择了全部偏好然后出现一柱擎天的情况

50131

oracle创建用户分配权限

oracle创建用户分配权限 我们要在有最高权限的system用户创建用户,再赋予新建用户权限,只有给新建用户权限,新建用户才能干什么。...CREATE USER 创建用户 DBA(数据库管理者) 使用 CREATE USER 语句创建用户 注意刚刚创建用户,仅仅是有这个用户的存在,还没有创建会话窗口的权限,进不了oracle界面 CREATE...USER TestUser —创建的用户 IDENTIFIED BY test; —识别登录密码 用户的系统权限 用户创建之后, DBA 会赋予用户一些系统权限 下方都是可赋予新创建用户的系统权限...—(创建表,可创建空表,但没有权限插入数据) ,CREATE SEQUENCE —(创建序列) ,CREATE VIEW —(创建视图) TO TestUser; 分配用户表空间 用户拥有create...table权限之外,还需要分配相应的表空间才可开辟存储空间用于创建的表 (可以创建空表,但不能添加数据) ALTER USER TestUser QUOTA UNLIMITED ON users;

1.5K20

mysql授予用户新建数据库的权限

好久不用mysql了,今天拾起来,新建用户,用Navicat连接之后,发现没有新建数据库的权限。...******** 2.为用户授权   授权格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by “密码”;    2.1 登录MYSQL(有ROOT权限),这里以...ROOT身份登录:  C:\mysql\mysql-5.6.41-winx64\bin>mysql -u demo -p Enter password: **********   2.2 首先为用户创建一个数据库...(testDB): mysql>create database demoDB;   2.3 授权test用户拥有testDB数据库的所有权限(某个数据库的所有权限):慎重:后面的密码是demo用户的密码...列出所有数据库   mysql>show database; 6. 切换数据库   mysql>use ‘数据库名’; 7. 列出所有表   mysql>show tables; 8.

12.5K30
领券