MySQL
Tom Ma.
先模仿,后超越!
First imitate, then surpass!
展开
-
MySQL 主从复制之 多个库同步到一个库 + 主从同步脚本
由于微服务分库导致无法跨库统计查询,因此利用 MySQL 主从复制的方式,将主服务器上的多个数据库同步到从服务器上的单个数据库上,从库设置只读,仅用于统计查询。环境准备1、通过 docker 创建 2 个数据库[root@node3 ~]# docker ps -aCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS .原创 2020-09-22 22:21:59 · 2880 阅读 · 0 评论 -
MySQL 5.7 GTID主从搭建
1、主库gtid_mode=onenforce_gtid_consistency=onlog_bin=on2、从库servier-idgtid_mode=onenforce_gtid_consistency=onlog_slave_updates=13、从库配置change master to \master_host='192.168.1.81', \master_user='Mysync',master_password='Abc@123456',master_a原创 2020-08-07 15:39:26 · 734 阅读 · 0 评论 -
MySQL 5.7 用户管理
1、创建只读用户创建用户,并授权SELECT查询权限,授权远程访问权限,注意,命令中username/password指用户名密码,请自己指定。若要限制仅指定IP可以使用此用户访问Mysql,将%改为具IP即可,dbname指定限制的数据库,如果是全部则改为*。grant select on dbname.* to 'username'@'%' identified by "password";2、刷新mysql权限,使用户创建、授权生效。flush privileges;..原创 2020-08-03 16:35:49 · 464 阅读 · 0 评论 -
MySQL innodb_buffer_pool_size 优化
1、Innodb buffer pool 缓存池中包含数据的页的数目,包括脏页。单位是 pageshow global status like 'Innodb_buffer_pool_pages_data';2、innodb buffer pool 的页总数目。单位是pageshow global status like 'Innodb_buffer_pool_pages_total';3、编译的 InnoDB 页大小 (默认 16KB)。show global status li原创 2020-06-19 10:10:20 · 811 阅读 · 0 评论 -
MySQL 查看所有事件详细情况
SELECT * FROM information_schema.EVENTS;原创 2020-06-18 11:40:13 · 5586 阅读 · 0 评论 -
MySQL 物理备份
1、打包tar -zcvf /tmp/bakup/mysql_full_$(date +%Y%m%d-%H%M%S).tar.gz /var/lib/mysql原创 2020-03-07 21:35:25 · 315 阅读 · 0 评论 -
MySQL 性能分析 show profile
Show Profile 是mysql 提供的可以用来分析当前会话中sql语句执行的资源消耗情况的工具,可用于sql调优的测量。默认情况下处于关闭状态,并保存最近15次的运行结果1、开启set profiling = 1;2、查看所有 sql 的执行时间show profiles;3、show profile 对 第三条 sql 语句 消耗 cpu 情况 进行诊断s...原创 2020-01-11 15:54:12 · 247 阅读 · 0 评论 -
MySQL 索引
1、创建索引alter table table_name add index index_name (column_list);alter table table_name add unique (column_list);alter table table_name add primary key (column_list);其中包括普通索引、UNIQUE索引和PRIMARY...原创 2019-11-15 18:14:02 · 213 阅读 · 0 评论 -
MySQL 查看正在被锁定的表
查询是否锁表show open tables where in_use > 0;查询到相对应的进程 然后 killid查看正在锁的事务SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS;查看等待锁的事务SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS;1、查...原创 2019-11-15 14:10:30 · 1356 阅读 · 0 评论 -
MySQL 开启慢查询及日志分割
1、MySQL开启慢查询日志slow_query_log=ONslow_query_log_file=/var/log/mysql/slow_query.log #新建慢查询文件,并指定文件所有者mysqllong_query_time=22、按天分割脚本#!/bin/bashlog_name=$(date +%Y%m%d)user=rootpasswd=1234...原创 2019-09-27 10:09:33 · 757 阅读 · 0 评论 -
MySQL 主从1062错误 自动处理脚本
#/usr/bin/bashuser=rootpasswd=123456mysql -u$user -p$passwd -e "show slave status\G" 2>/dev/null | grep HA_ERR_FOUND_DUPP_KEY 1>/dev/nullif [ $? -eq 0 ];then #sql状态 sql_s...原创 2019-09-24 17:34:12 · 392 阅读 · 0 评论 -
MySQL 中继日志
什么是中继日志从服务器I/O线程将主服务器的二进制日志读取过来记录到从服务器本地文件,然后从服务器SQL线程会读取relay-log日志的内容并应用到从服务器,从而使从服务器和主服务器的数据保持一致show variables like '%relay%';#结果+---------------------------+-------------------------------...原创 2019-09-09 09:55:36 · 8154 阅读 · 0 评论 -
MySQL 主从错误总结
1、跳过N条错语事件 Eventstop slave;set global sql_slave_skip_counter=1;start slave;2、跳过所有 1032 错误错误事件很多的情况下(一般不推荐使用)vi /etc/my.cnf#加入slave-skip-errors=1032#重启后生效systemctl restart mysqld3、...原创 2019-08-26 20:53:00 · 168 阅读 · 0 评论 -
Win10 下 安装 MySQL 5.7
1、下载 MySQLhttps://dev.mysql.com/downloads/mysql/5.7.html#downloads2、解压解压 到 D盘 路径为D:\mysql-5.73、创建my.ini 配置文件[Client]port = 3306user=rootpassword=Abc@123456 [mysqld]port = 330...原创 2019-08-03 20:00:30 · 214 阅读 · 0 评论 -
Win7 每天自动备份 MySQL
备份前需要安装MySQLWin10 下 安装 MySQL 5.7https://blog.csdn.net/mshxuyi/article/details/983704711、新建 backup.bat 格式文件内容如下:@echo offset "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"#切换至 MySQL 目录cd D:/mysql-.........原创 2019-03-15 16:08:42 · 474 阅读 · 0 评论 -
MySQL 相关操作
show status like '%uptime%' #查看运行时间validate_password=off #mysql关闭密码策略 etc/my.cnf [mysqld]添加set global time_zone='+8:00'; #修改MySQL时区set global log_timestamps=SYSTEM; #修改MySQL日志的时间#----------...原创 2019-07-12 09:59:04 · 160 阅读 · 0 评论 -
phpMyAdmin 配置
1、打开配置文件phpMyAdmin安装目录下 config.inc.php 这个文件2、配置参数说明$cfg['Servers'][$i]['auth_type'] ='cookie'; // 授权登陆方式三种方式可选:cookie,http,config① config 方式即输入phpMyAdmin 的访问网址即可直接进入,无需输入用户名和密码,是不安全的,不推荐使...原创 2019-05-08 15:17:41 · 4175 阅读 · 1 评论 -
CentOS 6.8 源码安装 MySQL 5.6
1、安装依赖包yum -y install make gcc-c++ cmake bison-devel ncurses-devel gcc \autoconf automake zlib* fiex* libxml* libmcrypt* libtool-ltdl-devel*2、下载MySQLcd /usr/local/srcwget http://dev.mysql.co...原创 2019-06-19 16:43:17 · 410 阅读 · 0 评论 -
CentOS 6.8 每天自动备份 MySQL
1、建立备份脚本 mysql_bak.shcd /home/mysql #切换目录vi mysql_bak.sh#添加如下内容#!/bin/bash#只导出数据mysqldump -uroot -proot database | gzip > /home/mysql/mysql_$(date +%Y%m%d_%H%M%S).sql.gz#导出所有(结构&数据&...原创 2019-06-21 11:28:37 · 554 阅读 · 0 评论 -
MySQL5.6 数据库主从服务器配置
安装环境操作系统:CentOS 6.8数据库版本:MySQL 5.6主机A:192.168.0.139 (Master)主机B:192.168.0.108 (Slave)环境配置service iptables stop #关闭防火墙 或者开启3306端口setenforce 0 #关闭selinuxMaster主机配置vi /etc/my.cnf #配置文...原创 2019-06-12 11:51:43 · 599 阅读 · 0 评论 -
CentOS 6.8 yum源安装mysql 如何卸载
1、查询当前系统中的mysqlyum list installed | grep mysql 查询结果mysql-community-client.x86_64 5.6.43-2.el6 @mysql56-communitymysql-community-common.x86_64 5.6.43-2.el6 @mysql56-community...原创 2019-03-04 21:56:52 · 1268 阅读 · 0 评论 -
CentOS 6.8 yum安装mysql 5.6
1、检查当前系统中是否存在其它版本yum list installed | grep mysql2、如果存在就卸载yum remove mysql-libs.x86_64 -y3、下载 mysql yum源#切换到yum源目录cd /etc/yum.repos.d#下载 yum源wget http://repo.mysql.com/mysql-community-......原创 2019-02-22 15:40:54 · 678 阅读 · 0 评论 -
MySQL 忘记密码解决方法
1、修改mysql配置文件vim /etc/my.cnf #在[mysqld]中的段中添加一行:skip-grant-tables2、重启mysqldservice mysqld restart3、登陆mysql修改密码mysql -u root -p #此时可以空密码登陆mysql> use mysql; #选择mysql表mysql> upda...原创 2019-02-22 17:27:09 · 594 阅读 · 1 评论 -
MySQL 中 my.cnf 常用配置
常用配置:[mysqld]port = 3306 #默认pid-file = /data/mysql/mysql.pidbasedir = /usr/local/mysql/ #程序安装目录symbolic-link = 0 #多客户访问同一数据库,该选项默认开启tmpdir = /usr/local/mysql/tmp/ #此目录被 MySQL用来保存临时文件open...原创 2019-06-27 15:34:44 · 7012 阅读 · 0 评论 -
MySQL 关闭slave主重
1、停止从服务stop slave;2、检查slave_open_temp_tables变量的值show status like '%slave%';mysql> show status like '%slave%';+------------------------+-------+| Variable_name | Value |+----...原创 2019-07-03 23:29:39 · 1322 阅读 · 0 评论 -
MySQL 查看binlog日志方法
mysqlbinlogmysqlbinlog --no-defaults --base64-output=decode-rows -v /var/lib/mysql/mysql-bin.000004BEGIN/*!*/;# at 203# at 235#190630 10:40:51 server id 2 end_log_pos 235 CRC32 0x8ef8ae9c ...原创 2019-06-28 15:13:09 · 1889 阅读 · 0 评论 -
MySQL 存储过程
1、创建带字段的表 student (id,name,age)#id 整型 主建 不能为空 自动增长#name 字符型长度50 不能为空#age 整型 不能为空 默认值18mysql> create table student( -> id int primary key not null auto_increment, -> name varcha...原创 2019-06-28 23:01:17 · 377 阅读 · 0 评论 -
MySQL 查看当前最大连接数,并发数
显示MySQL最大连接数mysql> show variables like '%max_connections%';+-----------------+-------+| Variable_name | Value |+-----------------+-------+| max_connections | 151 |+-----------------+---...原创 2019-07-10 13:52:41 · 4008 阅读 · 0 评论 -
MySQL Binlog 的配置
binlog简介binlog是一个二进制格式的文件,用于记录用户对数据库增量操作的SQL语句信息,例如更改数据库表和更改内容的SQL语句都会记录到binlog里,但是对库表等内容的查询不会记录。默认情况下,binlog日志是二进制格式的,不能使用查看文本工具的命令(比如,cat,vi等)查看,而使用mysqlbinlog解析查看mysqlbinlog --base64-output=...原创 2019-06-29 21:53:41 · 8037 阅读 · 0 评论 -
MySQL 内存优化配置
1、确定可以使用的最大内存2、确定mysql每个连接使用的内存MySQL最大使用内存select (@@key_buffer_size+ \@@innodb_buffer_pool_size+ \@@tmp_table_size+ \@@query_cache_size+ \@@innodb_log_buffer_size+ \@@max_connections*( \@...原创 2019-07-06 21:35:16 · 20714 阅读 · 1 评论 -
MySQL 创建数据库/表/字段
mysql -u root -p #登陆mysql 密码为空直接回车进入1、查询所有数据库mysql> show databases;2、创建数据库 schoolmysql> create database school default character set utf8 collate utf8_general_ci;3、进入school 数据库m...原创 2019-02-28 22:05:26 · 5960 阅读 · 0 评论