![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
mysql
黄宝康
这个作者很懒,什么都没留下…
展开
-
canal环境安装及springboot同步实验
简介canal是阿里针对mysql数据同步的一个工具,目前只支持mysql数据库。官网地址:https://github.com/alibaba/canal搭建教程之前我的个人博客讲解过mysql主从的搭建教程,其实canal的原理类似,也是基于mysql的日志分析。如下是官网的原话:canal 模拟 MySQL slave 的交互协议,伪装自己为 MySQL slave ,向 MySQL master 发送dump 协议MySQL master 收到 dump 请求,开始推送 binary l原创 2021-05-12 15:07:34 · 421 阅读 · 0 评论 -
mysql之load data into file语法
为了介绍 load data into 语法,这个语法是从文本文件中导入到数据库,比如有一个数据量非常大,有格式的文本文件,如何快速插入到数据库,我们可以使用程序,或者手工拼接SQL插入到数据库。今天我们讲解一个mysql自带的导入命令,这个命令效率比较高。准备文本文件,我们可以使用select into outfile 命令。如上截图报错了,是因为我们服务器没有配置支持我们编辑my.ini文件,在mysqld节点下增加如下配置:重启mysql服务,再次执行,成功。文本内容如下:默认Ta.原创 2021-04-22 11:59:24 · 1117 阅读 · 0 评论 -
mycat读写分离实验
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程首先搭建mysql主从环境,及mycat安装配置mycat的schema.xml文件<?xml version="1.0"?><!DOCTYPE mycat:schema SYSTEM "schema.dtd"><mycat:schema xmlns:mycat="http://io.mycat/"> <schema name="hbk" ch原创 2021-03-12 11:47:38 · 385 阅读 · 0 评论 -
mycat的安装
准备好环境,mysql主从主节点:192.168.37.101从节点:192.168.37.100配置不同的server-id,主的小于从并开启log-binmysql> grant all privileges on *.* to 'myslave'@'192.168.37.100' identified by 'myslave' with grant option;Query OK, 0 rows affected (0.00 sec)mysql> flush privile原创 2021-03-11 11:43:04 · 259 阅读 · 0 评论 -
Mysql在InnoDB引擎下索引失效行级锁变表锁案例
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程先做好准备,创建InnoDB引擎数据表,并添加了相应的索引DROP TABLE IF EXISTS `innodb_lock`;CREATE TABLE `innodb_lock` ( `a` int(10) NOT NULL, `b` varchar(255) NOT NULL DEFAULT '', KEY `index_a` (`a`), KEY `index_b` (`b`)) E转载 2021-02-03 09:20:56 · 269 阅读 · 0 评论 -
mysql的表锁机制(读写)
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程从数据库操作类型分读锁和写锁从对数据库操作的粒度分表锁和行锁读锁(共享锁):针对同一份数据,多个读操作可以同时进行而不会互相影响。写锁(排他锁):当前写操作没有完成前,它会阻断其他写锁和读锁。读锁实验:create table mylock( id int not null primary key auto_increment, name varchar(20))engine myisam;原创 2021-02-02 10:55:42 · 395 阅读 · 0 评论 -
mysql之全局日志
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程全局查询日志用于保存所有的sql执行记录,该功能主要用于测试环境,在生产环境中永远不要开启该功能。1、记录到表中 set global general_log =1 //开启全局日志,开启后会记录所有sql set global log_output='table' //记录sql到系统表general_log中 select * from mysql.general_log2、原创 2021-02-01 17:05:06 · 763 阅读 · 0 评论 -
mysql之show profile
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程show profiles是5.0.37之后添加的功能,要确保版本在5.0.37之后。show profile 和 show profiles 语句可以展示当前会话(退出session后,profiling重置为0) 中执行语句的资源使用情况。默认是关闭的,mysql> show profiles;Empty set (0.00 sec)设置开启mysql> set profilin原创 2021-02-01 16:43:35 · 411 阅读 · 0 评论 -
mysql批量数据脚本
一、建表# 新建库create database bigData;use bigData;#1 建表deptCREATE TABLE dept( id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT, deptno MEDIUMINT UNSIGNED NOT NULL DEFAULT 0, dname VARCHAR(20) NOT NULL DEFAULT "", loc VARCHAR(13) NOT NULL DEFAULT "" )原创 2021-02-01 15:59:00 · 262 阅读 · 0 评论 -
mysql慢查询
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程默认出厂的设置为10秒,long_query_time,意味着超过10秒的sql查询为慢查询。而且默认是关闭的,即默认没有开启慢查询功能。slow_query_log为OFF一般在生产环境下,也是临时开启,即回话级别的开启,当mysql服务重启的时候,会恢复默认。即执行service mysql restart的话,会恢复OFF状态,开启慢查询功能,会一定程度影响性能。一般系统跑了一段时间,感觉好卡,原创 2021-02-01 15:15:07 · 232 阅读 · 0 评论 -
centos7下安装mysql5.7(rpm)
https://blog.csdn.net/wudinaniya/article/details/81094578转载 2021-01-29 11:33:13 · 240 阅读 · 0 评论 -
mysql索引建立两表注意
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程左连接left join条件用于确定如何从右表搜索行,左边一定都有,所以右边是我们的关键点,一定要建立索引。右连接right join条件用于确定如何从左表搜索行,右边一定都有,所以左边是我们的关键点,一定要建立索引。可以通过执行计划来查看。...原创 2021-01-29 10:28:11 · 325 阅读 · 0 评论 -
libaio.so.1 is needed by MySQL-server-5.5.48-1.linux2.6.i386
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程在安装mysql时,出现如下错误:[root@k8s-master ~]# rpm -ivh MySQL-server-5.5.48-1.linux2.6.i386.rpm 警告:MySQL-server-5.5.48-1.linux2.6.i386.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY错误:依赖检测失败: libaio.so.1 被 M原创 2021-01-29 09:02:00 · 365 阅读 · 0 评论 -
mysql8远程授权问题
mysql8,需要创建新用户进行授权,直接用root授权报错;用原来的方式,报错信息如下:原来的方式grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;官网文档说明原文:Using GRANT to modify account properties other than privilege assignments. This includesauthentication, SSL,原创 2021-01-22 16:46:04 · 316 阅读 · 0 评论 -
mysql5.7 在[mysqld]添加skip-grant-tables之后 服务启动失败
查看日志,发现是由于validate_password=off配置导致删除该配置,或者注释,重启成功,然后修改root的密码。注意:mysql5.7的user表中的password字段已经改成了authentication_string 字段了。这时候,需要输入的命令是update user set authentication_string = password(“Szfore_68638”) where user=“root” ;修改好之后不要忘记注释掉skip-grant-tables,并重原创 2020-09-24 16:09:46 · 1979 阅读 · 0 评论 -
mysql之sql_mode
sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'原创 2020-06-28 11:46:29 · 400 阅读 · 0 评论 -
centos 6.9安装mysql 5.7.19出现缺少libnuma.so.1的问题
centos 6.9安装mysql 5.7.19出现以下报错:[root@fanyk bin]# ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/data/mysqldatabase/./mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or di原创 2020-06-17 13:36:49 · 527 阅读 · 0 评论 -
mysql获取叶子节点数据
select b.* from channel a right join channel bon a.parent_id=b.channel_idgroup by b.channel_id having count(a.channel_id)=0注意:channel_id是表结构自动增长ID,parent_id是父节点ID。原创 2020-06-08 15:22:44 · 992 阅读 · 2 评论 -
mysql中union order by问题
sql如下:SELECT * FROM ( SELECT * FROM ( SELECT * FROM task_view WHERE STATUS <> '3' AND STATUS <> '2' AND assign_user_id ='41f4f2eb4e1bbde2d6a65db5de3c' ORDER BY STATUS,grade,create_time )t1 UNION ALL SELECT * FROM ( SELECT * FROM t原创 2020-05-20 15:11:30 · 560 阅读 · 0 评论 -
mysql 根据某字段特定值排序
一、case when方式比如:表 :user字段:orders (值为 1,2,3)要求根据字段 orders 按2 -> 1 -> 3 排序使用以下语句实现SELECT *FROM userORDER BY CASE orders WHEN 2 THEN 1 WHEN 1 THEN 2 WHEN 3 THEN 3 END;二、union方式有下图这些数据,done、process、failure三种状态,怎么用sql语句根据顺序排序,并且同样的process 状态原创 2020-05-19 10:40:50 · 4419 阅读 · 0 评论 -
MySQL中添加唯一约束和联合唯一约束
在MySQL数据库中,经常会碰到由于业务需要添加唯一键约束,唯一键约束,可以在一个列上添加约束,也可以在多个列上添加唯一约束。一、单列唯一约束在一列上添加唯一约束,主要是让该列在表中只能有唯一的一行,例如注册邮箱时的邮箱名、手机号等信息,相关操作如下:1.建表时加上唯一性约束:CREATE TABLE `t_user` ( `Id` int(11) NOT NULL AUTO_IN...转载 2020-04-17 08:57:16 · 977 阅读 · 0 评论 -
mysql一主多从集群搭建
主从复制原理当对主服务器进行写的操作时,主服务器将自己的操作记录到一个二进制日志文件中,从服务器有一个心跳机制,定时的去读取主服务器的日志文件,当对比自己的日志文件有差异时,将差异部分同步更新到自己的服务器上。实验环境,三台服务器,一台mysql主,两台mysql从master192.168.169.134slave1192.168.169.133slave2192.168.16...原创 2020-04-14 17:35:07 · 866 阅读 · 0 评论 -
mysqlsla慢查询分析工具
什么是mysqlsla?Mysqlsla 是daniel-nichter 用perl 写的一个脚本,专门用于处理分析Mysql的日志而存在。mysqlsla 能解决什么问题?作为一名Mysql DBA,日常工作中处理日志是再正常不过的事情了。 通过Mysql的日志主要分为:General log,slow log,binary log三种。通 过query日志,我们可以分析业务的逻辑,...原创 2020-04-14 16:22:00 · 402 阅读 · 0 评论 -
MySQL 监控账户授权
mysql> grant select,process,replication client on *.* to monitor@'43.82.209.x' identified by '123';mysql> flush privileges;process: 用户可以执行SHOW PROCESSLIST和KILL命令。默认情况下,每个用户都可以执行SHOW PROCESSL...转载 2020-04-13 17:57:51 · 836 阅读 · 0 评论 -
mysql中的dual
大概在mysql 5.1版本后才出现的dual,之前版本没有dual表。mysql中使用select * from dual会报1096错误。oracle中会返回Xselect express [from dual];mysql总是作为返回该表达式值的普通select语句执行,返回一行记录的结果集,from dual 对mysql来说根本就是摆设!而oracle里该句必须有from d...原创 2020-04-13 16:39:36 · 2881 阅读 · 0 评论 -
mysql安装报FATAL ERROR: please install the following Perl modules before executing
解决方法执行如下命令yum -y install autoconf原创 2020-04-09 09:10:46 · 441 阅读 · 0 评论 -
linux安装mysql 5.7.28
解压cd /mysqltar -zxvf mysql-5.7.28-linux-glibc2.12-x86_64.tar.gzmv mysql-5.7.28-linux-glibc2.12-x86_64 mysql5.7groupadd mysqluseradd -r -g mysql -s /bin/false mysqlchown -R mysql.mysql mysql5.7/...原创 2020-04-08 14:08:06 · 504 阅读 · 0 评论 -
mysql order by 中文排序
1.在MySQL中,我们经常会对一个字段进行排序查询,但进行中文排序和查找的时候,对汉字的排序和查找结果往往都是错误的。 这种情况在MySQL的很多版本中都存在。如果这个问题不解决,那么MySQL将无法实际处理中文。 出现这个问题的原因是因为MySQL在查询字符串时是大小写不敏感的,在编绎MySQL时一般以ISO-8859字符集作为默认的字符集,因此在比较过程中中文编码字符大小写转换造成了这种现...原创 2020-03-19 15:58:06 · 5195 阅读 · 0 评论 -
Mysql group_concat处理一对多显示一行处理
public Page<WorkTask> pageNotFinishHBK(int pageNum, int pageSize, WorkTask wt){ String select = "SELECT * "; String selectExcept = "FROM t_task WHERE status IN ('-1','0','1') "; List param...原创 2019-12-13 17:56:38 · 338 阅读 · 0 评论 -
将Oracle的sql文件转换成MySQL的sql文件
最近发现了一个很好用的工具用来进行Oracle,MySQL等不同数据库类型SQL文件的转换,接下来给分享一下具体步骤:1.首先下载工具powerdesigner破解版,网上下载即可2.在PowerDesinger里找到 File -->> Reverse Engineer —>> Database选择SQL类型后点击确定3.添加SQL文件的路径,点击确定4...转载 2019-11-01 16:45:19 · 3875 阅读 · 1 评论 -
linux下安装mysql数据库
1:下载linux下对应mysql包,下载地址:http://dev.mysql.com/downloads/mysql/5.6.html#downloads ,也可以在linux终端使用wget命令:wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz 2:解压#解原创 2017-06-28 17:51:33 · 707 阅读 · 1 评论 -
mysql出现1030 Got error 28 from storage engine解决方法
MySQL 1030 error 出现的原因是没有足够的空间,清理磁盘空间即可恢复正常使用。清空/tmp目录,或者修改my.cnf中的tmpdir参数,指向具有足够空间目录原创 2017-07-04 09:45:42 · 3577 阅读 · 0 评论 -
Mysql数据库导入导出
在进行数据迁移时,使用navicat等系列mysql客户端工具导出成.sql文件,然后在需要的mysql机器上进行导入,自己亲测,发现了问题,用该类工具进行导出导入会丢失部分数据,感觉不可靠。 以下是我用navicat工具的导出方式: 然后在目标机器上新建对应的数据库,然后执行: 选择刚导出的sql文件,执行,令我惊讶的是,数据丢失了!!!! 以下这个是导出前某张表的数据条数:原创 2017-07-06 09:23:45 · 579 阅读 · 0 评论 -
MySql 删除数据库出错:Can't rmdir '.\test\', errno: 17
使用navicat mysql 客户端工具删除数据库时出现该问题,发现是该数据库所在文件夹下有非数据库文件, 当时在还原数据的时候,放入了一个psc文件,手动删了多余文件后,就可以正常删除数据库了。原创 2017-07-20 10:11:08 · 2859 阅读 · 0 评论 -
Mysql数据迁移命令mysqldump
mysql 数据迁移命令 备份database库table表中id大于22的数据,SQL如下mysqldump -u test -ptest database table –default-character-set=gbk -t –where=”id>22” >c:\test.sql 将年龄大于三十的同学的信息备份出来mysql> select * from students where Age原创 2017-08-17 14:34:22 · 667 阅读 · 0 评论 -
查看MySql的版本
(1)在命令行输入:mysql –version(2)进入mysql后,输入show variables like ‘version’;原创 2017-08-23 19:59:13 · 556 阅读 · 0 评论 -
MySQL——修改root密码的4种方法(以windows为例)
方法1: 用SET PASSWORD命令 首先登录MySQL。 格式:mysql> set password for 用户名@localhost = password(‘新密码’); 例子:mysql> set password for root@localhost = password(‘123’); 方法2:用mysqladmin 格式:mysqladmin -u用户名 -p旧密原创 2017-08-23 20:28:54 · 449 阅读 · 0 评论 -
本地无法启动MySQL服务,报的错误:1067,进程意外终止---解决
在本地计算机无法启动MySQL服务错误1067进程意外终止 这种情况一般是my.ini文件配置出错了首先找到这个文件: 默认安装路径 C:/Program Files/mysql/MySQL Server 5.1/my.ini打开此文件找到:default-storage-engine=INNODB 大概在84行。将default-storage-engine的值改为:MYISAM,这个时候,转载 2017-08-28 12:03:24 · 729 阅读 · 0 评论 -
解决Mysql错误1040 Too many connections的方法
解决mysql 1040错误Too many connections的方法 错误信息如下:Can not connect to MySQL server Error: Too many connectionsErrno.: 1040Similar error report has beed dispatched to administrator before.从官方文档知道linux上面编译安转载 2017-08-24 08:54:29 · 21531 阅读 · 2 评论 -
Mysql获取数据库的所有表,以及表所有字段信息
在许多时候,我们需要获取数据库中所有的表,比如常见的代码生成,脚手架之类的,通过选择库中的表,配置几个类属性,自动生成实体类,dao,service等。下面是mysql获取数据库所有表的语句。select table_name tableName, engine, table_comment tableComment, create_time createTime from information_原创 2017-09-21 11:07:13 · 10854 阅读 · 2 评论