
mySql
文章平均质量分 66
左直拳
程序猿
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
linux下变更mysql的数据文件目录
摘要:本文详细介绍了在Linux系统下变更MySQL数据文件目录的步骤。相比Windows系统,Linux操作更为简便,主要包括:停止MySQL服务、拷贝数据文件(保留权限)、修改配置文件指定新目录、重启服务等步骤。特别针对工控机预装MySQL的特殊情况,还提供了修改启动服务文件强制加载配置的方法。文中给出了具体操作命令和配置文件修改示例,并附有Windows系统下类似操作的参考链接。原创 2025-07-26 10:48:43 · 358 阅读 · 0 评论 -
mysql community 8.0.23升级到8.0.42再到8.4.5
我觉得8.0到8.4跳跃太大了,如果在生产系统弄,万一升级失败,原来的又用不了,那就完犊子了,风险太大。打开官网,一顿好找。现在国外的一些个网站,似乎有一种倾向,页面洋洋洒洒,林林总总,废话一大堆,就是不肯老老实实给出下载的链接。我们服务器上现有的版本是8.0.23,运行8.0.42的安装包,它是直接将现有的8.0.23版本升级到8.0.42,目录、端口什么的都没变,安装完之后可以继续使用,数据不受影响。我原先装的是8.0.23,就是64位的,然后下载了这个8.0.42的所谓32位,升级后仍然是64位。原创 2025-04-28 18:10:08 · 1405 阅读 · 0 评论 -
mysql读写分离与proxysql的结合
上一篇文章介绍了,而主从复制的目的,是为了读写分离。读写分离,拿spring boot项目来说,可以有2种方式:1)设置2个数据源,读和写分开使用2)使用中间件,如proxysql。它会根据sql语句自动匹配到主、从库方式一好处是灵活,可控,缺点是需要自己写一点代码,已有的项目修改可能比较大;proxysql的话,还是跟之前一样,只有一个数据源,代码好像也不用改。问题是,我用了一下,感觉有一些坑。也许是还不懂得怎么使用的缘故。原创 2025-02-12 18:26:14 · 1113 阅读 · 0 评论 -
设置mysql的主从复制模式
mysql设置主从复制模式似乎很容易,关键在于1)主库启用二进制日志,2)从库将主库设为主库。另外,主从复制,复制些什么?从我现在获得的还很少的经验来看,复制的内容有表,用户,用户权限,推测其他像视图、存储过程、触发器、索引之类应该也会自动复制。原创 2025-02-12 16:14:41 · 583 阅读 · 0 评论 -
mysql 从同一个表获取数据update自身报错一例
这种语句在别的数据库,比如oracle,是没有问题的。来到mysql就不行了。原创 2024-04-03 11:59:26 · 542 阅读 · 0 评论 -
windows下mysql8修改my.ini设置datadir后无法启动问题
mysql默认数据库文件在安装目录下。创建数据库的时候,并不能指定数据文件存放位置。这就很扯。它只能通过修改mysql.ini来更改数据文件存放目录,而且是一刀切的,没有办法做到数据文件和日志文件分开存放。假如服务器有多个盘,就不能利用磁盘不同IO的优势。但是,既然是服务器,通常会做阵列的吧,做了阵列,就无所谓哪个盘了。我这次要说的,是修改mysql.ini后,mysql无法启动的问题。我遇到的是2个原因:一个是mysql.ini修改后字符编码被改变,导致mysql无法识别;原创 2023-12-12 09:28:09 · 2967 阅读 · 2 评论 -
mysql分别在windows和linux下的备份策略
mysql数据库该怎么备份呢?数据库备份有几个概念:全量备份、增量备份、差异备份。当然啦,数据库备份又有冷备份和热备份,即物理备份和逻辑备份之分。冷备份就是将mysql停了,然后直接拷贝它的数据文件,简单粗暴。问题是,数据库怎可轻易停止或重启?所以我们通常说的备份都是指热备份,即逻辑备份。逻辑备份包括全量备份、增量备份、差异备份。全量备份就是整个库备份。增量备份是将上一次全量备份或增量备份后的变化备份。差异备份是将上次全量备份后的变化备份。所以增量备份和差异备份有重叠。原创 2023-12-11 10:42:16 · 535 阅读 · 0 评论 -
用docker承载mysql
这两天部署系统到生产服务器,前端后端部署docker是毫无疑义的,但mysql呢?答案是mysql可以部署到docker。原创 2023-04-21 10:45:04 · 343 阅读 · 0 评论 -
mysql插入记录时违反唯一索引的处理
mysql提供了一些语句来处理这种情况。1、使用 INSERT IGNORE 语句2、使用 ON DUPLICATE KEY UPDATE 从句3、使用 REPLACE 语句。原创 2022-08-30 14:09:58 · 2445 阅读 · 0 评论 -
mysql的delete语句使用exists删除数据走不通
delete语句中使用exists走不通,只好结合临时表曲线救国。原创 2022-08-17 18:41:06 · 3236 阅读 · 0 评论 -
mysql的日志文件
上回说到数据库的备份与恢复,日志文件在其中占有很重要的位置。但是,我查了下资料,发现想搞懂这个数据库日志其实并不容易。包括网上许多文章,说了许多,但我越看越糊涂。只有一些mysql的日志文件原理介绍,相对好一些。mysql因为应用广泛,使用者众,作为数据库的学习对象,也算有代表性。一、MySQL的日志文件MySQL中有七种日志文件,分别是:重做日志(redo log)回滚日志(undo log)二进制日志(binlog)错误日志(errorlog)慢查询日志(slow query log)原创 2022-03-24 21:51:59 · 3366 阅读 · 0 评论 -
mysql字符集问题
mysql的字符集分为库、表、字段3个层级,带来不少困扰。原创 2022-02-11 19:00:37 · 896 阅读 · 1 评论 -
mysql union语句报错:Error Code: 1271. Illegal mix of collations for operation ‘UNION‘
字符集不同报错;字段长度不一也会报错。原创 2022-01-08 19:24:18 · 6692 阅读 · 0 评论 -
mysql一主一从读写分离真的可以提高性能吗?
日志是个好东西原创 2021-03-24 23:24:25 · 1603 阅读 · 5 评论 -
mysql的主从复制和读写分离
从本质上来说,目前一些主流应用得数据库都是单机系统,像oracle、sql server等。但mysql作为一种发端自开源的数据库,很有自己的想法,很容易就可以支持多个数据库实例一同工作,一主多从,实行主从复制,读写分离,隐隐然有分布式数据库之风。当然,这应该不是分布式数据库。主从模式,应该算集群模式吧。分布式是指一份数据拆成多个小部分,分别存储在不同的机器上;而集群则是一份数据同时存在多台机器...原创 2020-04-11 22:28:11 · 408 阅读 · 0 评论 -
mysql的存储引擎
一、什么是存储引擎数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还可以 获得特定的功能。存储引擎这个概念似乎只有mysql有,存储引擎不同,mysql呈现出来的特性也不同,适用场景就不同。其他数据库,没有听说过有存储引擎这个概念。但应该也有类似的机制。比如...原创 2020-04-10 00:08:58 · 1442 阅读 · 0 评论 -
数据库共享锁(读锁)和排他锁(写锁)
为了保持数据的一致性,数据库提供了事务。但是,这只能解决单个会话的问题,并不能解决并发操作下数据的一致性。并发操作下,数据会出现以下问题:1、修改丢失事务A与事务B从数据库中读入同一数据并修改,事务B提交的结果破坏了事务A提交的结果,导致事务A的修改被丢失。2、脏读事务A修改某一数据,写回磁盘,期间事务B读取同一数据;事务A由于某种原因被撤销,数据回滚,则B读到的数据与库中真实数据不符。...原创 2020-02-07 20:35:16 · 5090 阅读 · 0 评论 -
mySql学习笔记:比sql server书写要简单
在学mySql。总的感觉,mySql与Sql Server差不多,语法都很象,原创 2014-07-09 22:19:57 · 2419 阅读 · 1 评论 -
mysql备份及还原
mysql怎样复制数据库?或者说,将数据库拷贝到另外一台机?按照我的理解,复制数据库,如果是:1、直接拷贝数据库文件,应该先停数据服务,否则拷不出来。但是,生产机器,哪能说停就停呢?2、在线拷贝,则循备份-还原的路子。“不是的,mysql可以直接拷贝数据库文件,无须停服务,俺以前用过”,有个同事说。哦,有这等好事!mySql果然就是牛。不过我上网搜了下,mysql有innoDB和myISAM两种模式...原创 2016-10-11 19:22:23 · 902 阅读 · 1 评论 -
mysql允许远程访问
mysql默认不能远程访问。what!怎么可能!大家满口赞誉的东东,居然默认是个单机版,太玩具了吧。其实,这只是对刚安装好的mysql来说的。刚装好的mysql,只有一个账号,就是管理员root,限定只能本机访问,好像也没啥不妥吧(反而更谨慎?)。那么,如何才能开启远程访问呢,比如同一个局域网里面,允许其他机器访问它的数据库?假设新装好的MYSQL,其初始账号情况如下:+------+-------原创 2016-11-06 14:16:01 · 852 阅读 · 0 评论 -
mysql + Fluently NHibernate + WebAPI + Autofac
MySQL、Fluently NHibernate、WebAPI、Autofac,对我来说每一个都是麻烦疙瘩,现在它们为了一个共同的项目而凑合到一起了。一路磕磕碰碰,现在貌似有了一点眉目。作为一个步入老人痴呆帕金森阶段的老革命,我当然要马上将奋斗过程记录下来:1、MySql + Fluently NHibernatestatic ISessionFactory sessionFactory;publ原创 2016-10-14 16:27:52 · 1571 阅读 · 0 评论 -
windows下访问 mysql
同事下午问起mysql。时间太长了,还是2016年的事情,根本想不起来。而且就没有怎么熟悉。现在,我连mysql有没有启动,怎么访问都忘记了。经过一番努力之后,记录一下:1、windows下,安装mysql数据库的话,操作系统的服务里会建立一个自动启动的启动项。所以,默认情况下,windows里,mysql是自动运行的,不用像tomcat那样,要么到它bin目录里运行批处理文件,要么手动建...原创 2018-07-12 18:39:45 · 924 阅读 · 1 评论 -
mysql远程访问
mysql本地访问是没什么问题的,但远程就不然了。mysql默认是不支持远程访问的,问你死未。一、mysql本身要允许1、设置现有账号支持远程访问刚装好的mysql,只有一个账号,就是管理员root,限定只能本机访问。mysql>SELECT User, Host FROM mysql.user;+------+-----------+| user | host |...原创 2018-12-26 16:26:18 · 3708 阅读 · 0 评论 -
mysql的4种事务隔离级别
博客园里有篇文章谈到mysql的4种事务隔离级别,哪4种?1、未提交读(read uncommitted)2、已提交读(read committed)3、可重复读(repeatable read)4、串行化(serializable)文章解说了为何oracle、sql server默认的隔离级别都是“已提交读”,而mysql则默认是“可重复读”。但可惜这4种事务隔离级别有什么区别,却...原创 2019-03-13 17:43:02 · 1193 阅读 · 1 评论 -
mysql学习笔记:存储过程
use test;drop table if exists t8;CREATE TABLE t8(s1 INT,PRIMARY KEY(s1));drop procedure if exists handlerdemo;DELIMITER $$CREATE PROCEDURE handlerdemo()BEGINdeclare xx int default 4;DECLARE原创 2014-07-14 22:19:35 · 2110 阅读 · 1 评论