202010-08 The MySQL server is running with the --read-only option so it cannot execute this statement 正在开会,同事电话反映开发库不能写入了,错误信息如下:1209-TheMySQLserverisrunningwiththe--read-onlyoptionsoitcannotexecutethisstatement一般这个错误有两种原因:1.连到从库了。从库一般设置为只读。2.主库的read_only参数被修改为1开发人员是普通用户应该没有权限修改这个参数的值。DBA也不会去主动修改这个参数。那究竟是什么原因导致开发库不能写入了呢?首先确认了不是开发人员的问题,因为部门的200... 继续阅读 >
202010-08 详解 Mysql 事务和Mysql 日志 事务特性1、原子性(Atomicity):事务开始后所有操作,要么全部做完,要么全部不做,不可能停滞在中间环节。2、一致性(Consistency):事务开始前和结束后,数据库的完整性约束没有被破坏。比如A向B转账,不可能A扣了钱,B却没收到。3、隔离性(Isolation):同一时间,只允许一个事务请求同一数据,不同的事务之间彼此没有任何干扰。比如A正在从一张银行卡中取钱,在A取钱的过程结束前,B不能向这张卡转账。4、持久性(Durabil... 继续阅读 >
202010-08 Navicat出现无法远程连接MySql服务器问题的解决办法 Navicat无法远程连接MySql服务器问题的解决方法写在前面:操作系统:中标麒麟4.0;数据库:MySQL5.7.26;JDK:采用中标麒麟系统自带的openjdk;客户端工具:Navicat;前置条件:MySQL服务安装完毕;情景:安装好mysql,本地访问正常,但同一个局域网内的机器都无法访问该服务器上的mysql数据库;原因:mysql默认是不可以通过远程机器访问的,只允许本地访问,通过下面的配置可以开启远程访问;排查思路:mysql设置远程访问主要从以... 继续阅读 >
202010-08 Python连接mysql数据库及简单增删改查操作示例代码 1.安装pymysql进入cmd,输入pipinstallpymysql:2.数据库建表在数据库中,建立一个简单的表,如图:3.简单操作 3.1查询操作#coding=utf-8#连接数据库测试importpymysql#打开数据库db=pymysql.connect(host="localhost",user="root",password="root",db="test")#使用cursor()方法获取操作游标cur=db.cursor()#查询操作sql="select*frombooks"try:#执行sql语句cur.execute(sql)results=cur.fetchall()#遍... 继续阅读 >
202010-08 Python连接Mysql进行增删改查的示例代码 Python连接Mysql1.安装对应的库使用Python连接Mysql数据库需要安装相应的库以管理员身份运行cmd,输入命令pipinstallmysql.connector安装完成后建立test.py写入importmysql.connector保存后运行pythontest.py用以测试模块库是否安装完成,如果不报错,说明安装完成2.进行连接测试编写connectTest.py文件文件内容:importmysql.connectorconnect=mysql.connector.connect(host="127.0.0.1",#数据库主机地址user="root",... 继续阅读 >
202010-08 关于msyql事务隔离你要知道 什么是事务?事务是数据库管理系统执行过程中的一个逻辑单位,由一个有限的数据库操作序列构成。数据库事务通常包含了一个序列的对数据库的读/写操作。包含有以下两个目的:为数据库操作序列提供了一个从失败中恢复到正常状态的方法,同时提供了数据库即使在异常状态下仍能保持一致性的方法。当多个应用程序在并发访问数据库时,可以在这些应用程序之间提供一个隔离方法,以防止彼此的操作互相干扰。隔离性与隔离级别提到事务... 继续阅读 >
202010-08 解决mysql服务器在无操作超时主动断开连接的情况 我们在使用mysql服务的时候,正常情况下,mysql的设置的timeout是8个小时(28800秒),也就是说,如果一个连接8个小时都没有操作,那么mysql会主动的断开连接,当这个连接再次尝试查询的时候就会报个”MySQLserverhasgoneaway”的误,但是有时候,由于mysql服务器那边做了一些设置,很多情况下会缩短这个连接timeout时长以保证更多的连接可用。有时候设置得比较变态,很短,30秒,这样就需要客户端这边做一些操作来保证不要让mys... 继续阅读 >
202010-08 mySQL服务器连接,断开及cmd使用操作 通过mysql命令实现连接MySQL服务器。在MySQL服务器启动后,选择“开始”→“运行”命令,在弹出的“运行”窗口中输入“cmd”命令,按Enter键后进入DOS窗口,在命令提示符下输入连接MySQL服务器。测试网址www.dc3688.com连接MySQL服务器需要输入用户名、密码、MySQL服务器所在地址>mysql-uroot-h127.0.0.1-ppassword断开连接连接到MySQL服务器后,可以通过在MySQL提示符下输入“exit”或者“quit”命令断开MySQL连接。mysql>quit... 继续阅读 >
202010-08 C++连接并使用MySQL数据库 本文实例为大家分享了C++连接并使用MySQL数据库的具体代码,供大家参考,具体内容如下1.C++连接MySQL数据库首先在VS里新建C++工程项目,右键工程项目名,选择属性。选择平台选择选择配置管理器选择新建下拉菜单中选择X64.确定选择C/C++->常规->附加包含目录,添加C:\ProgramFiles\MySQL\MySQLServer5.5\include(根据自己的安装目录选择)选择连接器->常规->附加库目录。添加C:\ProgramFiles\MySQL\MySQLServer... 继续阅读 >
202010-08 深入了解mysql索引 1、索引原理索引被用来快速找出在一个列上用一特定值的行。没有索引,MySQL不得不首先以第一条记录开始,然后读完整个表直到它找出相关的行。表越大,花费时间越多。对于一个有序字段,可以运用二分查找(BinarySearch),这就是为什么性能能得到本质上的提高。MYISAM和INNODB都是用B+Tree作为索引结构(主键,unique都会默认的添加索引)2、创建索引如果未使用索引,我们查询工资大于1500的会执行全表扫描什么时候需要给字段... 继续阅读 >
202010-08 怎样安全地关闭MySQL实例 本文分析了mysqld进程关闭的过程,以及如何安全、缓和地关闭MySQL实例,对这个过程不甚清楚的同学可以参考下。关闭过程:1、发起shutdown,发出 SIGTERM信号2、有必要的话,新建一个关闭线程(shutdownthread)如果是客户端发起的关闭,则会新建一个专用的关闭线程如果是直接收到SIGTERM信号进行关闭的话,专门负责信号处理的线程就会负责关闭工作,或者新建一个独立的线程负责这个事当无法创建独立的关闭线程时(例如内存... 继续阅读 >
202010-08 C++连接使用MySQL的方法 C++连接使用MySQL,供大家参考,具体内容如下定义MySQLCon类classMySQLCon{MYSQLmysql;public:interrornum;stringerrortext;public://初始化MySQLCon();//关闭数据库~MySQLCon();//链接数据库boolOpenConn(constchar*host,constchar*username,constchar*pwd,constchar*dbName,unsignedport=0);voidGetErrorText();//获取错误文本voidClose();//关闭数据库boolExecuteSQL(constchar*sql);//使用SQL... 继续阅读 >
202010-08 MySQL 表的垂直拆分和水平拆分 垂直拆分垂直拆分是指数据表列的拆分,把一张列比较多的表拆分为多张表通常我们按以下原则进行垂直拆分:把不常用的字段单独放在一张表;把text,blob等大字段拆分出来放在附表中;经常组合查询的列放在一张表中;垂直拆分更多时候就应该在数据表设计之初就执行的步骤,然后查询的时候用jion关键起来即可;水平拆分水平拆分是指数据表行的拆分,表的行数超过200万行时,就会变慢,这时可以把一张的表的数据拆成多张表来存放。水平... 继续阅读 >
202010-08 详解MySQL 慢查询 查询mysql的操作信息showstatus--显示全部mysql操作信息showstatuslike"com_insert%";--获得mysql的插入次数;showstatuslike"com_delete%";--获得mysql的删除次数;showstatuslike"com_select%";--获得mysql的查询次数;showstatuslike"uptime";--获得mysql服务器运行时间showstatuslike'connections';--获得mysql连接次数查询mysql的操作信息show[session|global]statuslike....如果你不写[sessi... 继续阅读 >
202010-08 MySQL Innodb 存储结构 和 存储Null值 用法详解 背景:表空间:INNODB所有数据都存在表空间当中(共享表空间),要是开启innodb_file_per_table,则每张表的数据会存到单独的一个表空间内(独享表空间)。独享表空间包括:数据,索引,插入缓存,数据字典。共享表空间包括:Undo信息(不会回收<物理空间上>),双写缓存信息,事务信息等。段(segment):组成表空间,有区组成。区(extent):有64个连续的页组成。每个页16K,总共1M。对于大的数据段,每次最后可申请4个区。页(... 继续阅读 >
202010-08 MySQL中建表时可空(NULL)和非空(NOT NULL)的用法详解 对于MySQL的一些个规范,某些公司建表规范中有一项要求是所有字段非空,意味着没有值的时候存储一个默认值。其实所有字段非空这么说应该是绝对了,应该说是尽可能非空,某些情况下不可能给出一个默认值。那么这条要求,是基于哪些考虑因素,存储空间?相关增删查改操作的性能?亦或是其他考虑?该理论到底有没有道理或者可行性,本文就个人的理解,做一个粗浅的分析。1,基于存储的考虑这里对存储的分析要清楚MySQL数据行的存储格... 继续阅读 >