在主从中,我们设置从库只读: 1、如果只是打开read_only=on 在从库上启用确保只接受来自主库的更新,不接受来自客户端的更新。但是不能保证连到从库具有super权限误写数据。 2、mysql5.7.8开始支持super_read_only参数,如果super_read_only=on,在从库直接受来自主库的更新,连接到从库的含有super用户权限也不能更新,确保从库不被写如异常数据。另外注            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-11-09 11:39:24
                            
                                435阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            在日常的MySQL运维工作中,有时会遇到“表read only”的问题,这可能会导致我们的业务系统无法正常运行。下面我将详细记录解决“MySQL表read only”的过程,包括问题背景、错误现象、根因分析、解决方案、验证测试和预防优化等多个方面。
### 问题背景
假设我是一个负责多租户SaaS平台的运维工程师,某天突然接到用户反馈,某些数据库表格无法进行任何写操作。经过初步验证发现,确实存            
                
         
            
            
            
            MySQL 里经常说到的 WAL技术,也就是先写日志,再写磁盘。当内存数据页跟磁盘数据页内容不一致的时候,我们成这个内存页为“脏页”。内存数据写入磁盘后,内存和磁盘上的数据页内容就一致了,称为“干净页”。MySQL 从 内存更新到磁盘的过程,称为刷脏页的过程(flush)。InnoDB 刷脏页的时机:内存中的redo log 写满了,这时系统就会停止所有更新操作,把checkoutpoint 往前            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-12-14 10:17:58
                            
                                52阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            背景之前的月报中我们比较了InnoDB linear read-ahead和Oracle的multiblock read,两个的性能有所差别,具体可以参考月报详情。 这两种方式之所以带来了更高的吞吐量,都基于数据存储的连续性的假设,比如MySQL使用自增字段作为pk的InnoDB索引表,或者是Oracle使用默认的堆表,但当这样的假设条件不成立的时候,怎么办?场景考虑下面的一个场景,如下图所示:这            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-02 08:36:07
                            
                                44阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            # MySQL read_only属性的修改
MySQL的`read_only`属性用于控制数据库的读写权限,当设置为只读时,所有连接到数据库的用户只能进行读操作,不能进行写操作。本文将介绍如何修改MySQL的`read_only`属性。
## 1. 查看当前的read_only属性
首先,我们需要查看当前MySQL实例的`read_only`属性的值。可以通过执行以下SQL语句来获取:            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-08-30 06:11:33
                            
                                2024阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            http://www.9enjoy.com/mysql-table-is-read-only/
 
下面是引用,实际上我的错误故障是发生在测试服务器上,导入数据的时候,出错,中途停止,然后drop掉数据库,从他处拷贝数据库至此,提示read only,然后修改文件属性,chown,chmod,然后flush tables,解决问题。
 
一个Discuz论坛,原来架在w            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                            精选
                                                        
                            2012-12-05 09:50:00
                            
                                911阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            ### 如何修改MySQL Workbench的Read Only属性
MySQL Workbench是一个用于管理和开发MySQL数据库的工具。在MySQL Workbench中,有时候需要修改数据库的Read Only属性来实现特定的需求。本文将介绍如何通过MySQL Workbench来修改数据库的Read Only属性。
#### 问题描述
假设我们有一个名为`mydatabase`            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-01-22 08:36:46
                            
                                1063阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一客户的mysql数据库600多M.从windows换成linux.导出再导入太麻烦了.于是直接复制物理文件到linux.先创建好linux下面的mysql数据库.再把文件wget过来覆盖掉之后.问题出现了,在mysql中,Select之类的都正常,但在phpmyadmin优化数据库的时候中提示:Table 'jieqi_xxxx' is read only,给数据库目录的所属用户            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                            精选
                                                        
                            2013-07-15 21:57:17
                            
                                1360阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            问题背景: 1、在进行数据迁移和从库只读状态设置时,都会涉及到只读状态和Master-Slave主从关系设置 2、数据库参数文件默认是只读,重启数据库服务时 解决方法: 1、在my.cnf配置文件中添加"read_only=1",但是这需要重启数据库服务 2、用root账号登录mysql,执行命令            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-02-05 10:25:57
                            
                                268阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            文件:include/inc_function.php 系统默认会载入此文件GetCurUrl()获得当前的脚本的URLGetAlabNum($str)把字符串里的全角数字转为半角数字(会把非数字类型字符删除)Text2Html($txt)文本转HTMLHtml2Text($str)获得HTML里的文本function ClearHtml($str)清除HTML标记cnw_left($str,$l            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-09-12 22:01:56
                            
                                16阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            背景:在博客迁移过程,由于误操作原来的mysql无法启动,只能通过新建一个mysql,然后清空data目录,将原来的data都拷            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-03-01 09:59:43
                            
                                1146阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            复制概述Redis支持复制的功能,以实现当一台服务器的数据更新后,自动将新的数据异步同步到其它数据库。Redis复制实现中,把数据库分为主数据库master和从数据库slave,主数据库可以进行读写操作,从数据库一般是只读的,当主数据库数据变化的时候,会自动同步给从数据库。复制带来的好处1:可以实现读写分离
2:利于在主数据库崩溃时的数据恢复
3:水平扩容支撑高并发复制基本配置主数据库不做配置;
            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-01-31 04:17:46
                            
                                125阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Put a table into read-only mode,which prevents DDL or DML changes during table maintenance Put the table back into read/write mode alter table XX READ            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2019-09-11 09:58:00
                            
                                212阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            在引入super_read_only之前,mysql提供了一个选项read_only。开启read_only之后,会阻止没有super权限的用户执行数据库更新操作。read_only主要用于复制节点。super_read_only不仅会阻止普通用户,也会阻止具有super权限的用户对数据库写操作。r            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-04-06 14:39:00
                            
                                593阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            # 解决 MySQL 表只读问题的项目方案
## 引言
在使用 MySQL 数据库时,遇到“Table is read-only”的错误消息常常会导致应用程序无法正常写入数据。这个问题通常由多种原因引起,例如数据库引擎的设置、文件权限、服务器状态等。本文将详细探讨解决这个问题的步骤,并提供可行的解决方案和代码示例。
## 问题分析
首先,明确“Table is read-only”错误的可            
                
         
            
            
            
            本文章总结了关于在linux与windows中 mysql出现Table is read only解决办法总结,有需要的朋友可参考一下如果是使用中的数据库突然出现些类问题 在Linux下面执行下面命令就可以了,当然你要找到你的mysql目录 linux中 复制代码 代码如下:/usr/local/mysql/bin/mysqladmin -u root -p flus            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2014-10-24 15:43:29
                            
                                2323阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            之前是在linux下面直接Copy的data下面整个数据库文件夹,在phpMyAdmin里面重新赋予新用户相应权限后,drupal成功连接上数据库。但出现N多行错误提示,都是跟Cache相关的表是‘Read only‘,而且phpMyAdmin里面优化表也是提示”Table ‘xxx’ is rea...            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-07-28 17:08:08
                            
                                1148阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            ALTER TABLE 句法ALTER [IGNORE] TABLE tbl_name alter_spec [, alter_spec ...]alter_specification:         ADD [COLUMN] create_definition [FIRST | AFTER column_name ] or&            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-12-26 11:12:59
                            
                                48阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            重点:
  super_read_only、read_only:不会从master传递(复制)到slave 
  super_read_only=on隐含实现read_only=on
  read_only=off隐含实现super_read_only=off
 
 
super_read_only
Property
Value
Command-Line Format
--super-read            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2020-03-22 20:16:00
                            
                                491阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            # MySQL 主从设置与只读模式
在分布式数据库系统中,主从复制是一种常见的架构,用来提高数据的可用性和系统的性能。MySQL作为一个广泛使用的开源数据库,提供了方便的主从配置功能。本文将介绍如何在MySQL中设置主从复制,以及如何将从服务器设置为只读模式,防止其数据被意外修改。
## MySQL 主从复制
在主从架构中,主服务器负责处理所有的写操作,而从服务器负责处理读操作。这样一来,可