202112-09 SpringBoot整合Sharding-JDBC实现MySQL8读写分离 目录一.前言二.项目目录结构三.pom文件四.配置文件(基于YAML)及SQL建表语句五.Mapper.xml文件及Mapper接口六.Controller及Mocel文件七.结果八.Sharding-JDBC不同版本上的配置一.前言这是一个基于SpringBoot整合Sharding-JDBC实现读写分离的极简教程,笔者使用到的技术及版本如下:SpringBoot2.5.2MyBatis-Plus3.4.3Sharding-JDBC4.1.1MySQL8集群(看笔者前一篇文章有部署教程)二.项目目录结构三.pom文件<... 继续阅读 >
202103-09 docker-compose基于MySQL8部署项目的实现 1.首先按照以下的路径创建相应的文件夹/usr/local/docker/mysql2.然后在该目录下创建docker-compose.yml文件并且在文件中加入以下的配置version:'3.1'services:db:image:mysqlrestart:alwaysenvironment:MYSQL_ROOT_PASSWORD:123456command:--default-authentication-plugin=mysql_native_password--character-set-server=utf8mb4--collation-server=utf8mb4_general_ci--explicit_defaults_for_times... 继续阅读 >
202012-16 MySql8 WITH RECURSIVE递归查询父子集的方法 背景开发过程中遇到类似评论的功能是,需要时用查询所有评论的子集。不同数据库中实现方式也不同,本文使用Mysql数据库,版本为8.0Oracle数据库中可使用START[Param]CONNECTBYPRIORMysql中需要使用WITHRECURSIVE需求找到name为张三的孩子和孙子,pid为当前记录的父id,如张三儿子的pid为张三的id,以此类推。引入计算1到100的累加的结果。WITHRECURSIVEt(n)AS(//t为我们结果表,n为字段,可以只指定表明不指定字段... 继续阅读 >
202012-16 Nacos配置MySQL8的方法 1、MySQL创建数据库nacos_config2、选中数据库nacos_config,执行Nacos自带的创建表脚本https://github.com/alibaba/nacos/blob/master/distribution/conf/nacos-mysql.sql或nacos安装目录下conf/nacos-mysql.sql3、下载源码 https://github.com/alibaba/nacos/tree/1.2.04、修改根pom.xml5、修改com.alibaba.nacos.naming.healthcheck.MysqlHealthCheckProcessor6、打包console工程7、将console\target\nacos-server.jar替换... 继续阅读 >
202011-22 详解MySQL8的新特性ROLE 【MySQL的ROLE解决了什么问题】假设你是一个职业素养良好的DBA比较同时又比较注重权限管理的话;可能遇到过这样的问题,数据库中有多个开发人员的账号;有一天要建一个新的schema,如果你希望之前所有的账号都能操作这个schema下的表的话,在mysql-8.0之前你要对第一个账号都单独的赋一次权。mysql-8.0.x所权限抽象了出来用ROLE来表示,当你为ROLE增加新的权限的时候,与这个ROLE关联的所有用户的权限也就一并变化了;... 继续阅读 >
202010-08 详解如何使用Docker部署Django+MySQL8开发环境 前一段时间重装了系统,然后我还没有备份,导致电脑里的开发环境全都没有了。一想到又要装Python环境,还要装数据库,然后安装过程中还可能报一堆错就头疼。最近正在学习Docker,这不正好解决了我当前的痛点了吗?而且,不止这次重装系统,以后再重装都不怕了,只要拿着Dockerfile和docker-compose文件,不管到什么环境,一条命令轻松跑起来。之前部署Python开发环境,都是用的virtualenv,或者是Pipenv。这次使用Dock... 继续阅读 >
202009-29 MySQL8新特性之降序索引底层实现详解 什么是降序索引大家可能对索引比较熟悉,而对降序索引比较陌生,事实上降序索引是索引的子集。我们通常使用下面的语句来创建一个索引:createindexidx_t1_bcdont1(b,c,d);上面sql的意思是在t1表中,针对b,c,d三个字段创建一个联合索引。但是大家不知道的是,上面这个sql实际上和下面的这个sql是等价的:createindexidx_t1_bcdont1(basc,casc,dasc);asc表示的是升序,使用这种语法创建出来的索引叫做升序索引。也就是我... 继续阅读 >