mysql管理语句以及相关备份恢复
创始人
2025-05-31 16:57:04
0

1. 数据库备份语句
1.1 全备份
xtrabackup --defaults-file=/usr/local/mysql/mysql6606.cnf --user=$user --password=$passwd --port=$port --socket=$socket --use-memory=4G --parallel=4 --no-lock --backup --target-dir=$full_backup_dir
1.2 增量备份
1.2.1 第一次增量
innobackupex --defaults-file=/usr/local/mysql/mysql6606.cnf --user=root --password=123 --incremental --incremental-basedir=/backup/full /backup/inc1
1.2.2 第二次增量
innobackupex --defaults-file=/usr/local/mysql/mysql6606.cnf --user=root --password=123 --incremental --incremental-basedir=/backup/inc1 /backup/inc2
1.2.3 逻辑备份
mysqldump -uroot -p -R -E --max-allowed-packet=256M --single-transaction --set-gtid-purged=OFF -P6606 -S/data/mysql_6606/mysql.sock --databases tybss_report >/data/tybss_report0509.sql
1.2.4 备份库,但忽略一些表
mysqldump -uroot -p -R -E --max-allowed-packet=256M --single-transaction --set-gtid-purged=OFF -P6606 -S/data/mysql_6606/mysql.sock panda_rcs --ignore-table=panda_rcs.match_event_info --ignore-table=panda_rcs.standard_sport_market_flowing --ignore-table=panda_rcs.rcs_standard_sport_market_sell_flowing --ignore-table=panda_rcs.bak_match_statistics_info_detail --ignore-table=panda_rcs.standard_sport_market_odds --ignore-table=panda_rcs.rcs_monitor_error_log --ignore-table=panda_rcs.standard_sport_market --ignore-table=panda_rcs.rcs_monitor_mq_info > ./panda_rcs.sql
1.2.5 只备份特定表的表结构
mysqldump -uroot -p -R -E --max-allowed-packet=256M --single-transaction --set-gtid-purged=OFF -P6606 -S/data/mysql_6606/mysql.sock -d panda_rcs match_event_info standard_sport_market_flowing rcs_standard_sport_market_sell_flowing bak_match_statistics_info_detail standard_sport_market_odds rcs_monitor_error_log standard_sport_market rcs_monitor_mq_info match_statistics_info_flowing rcs_monitor_garbage_collector > table.sql

2. 数据库恢复
2.1全备份恢复
xtrabackup --defaults-file=/usr/local/mysql/mysql6606.cnf --prepare --target-dir=$full_backup_dir
xtrabackup --defaults-file=/usr/local/mysql/mysql6606.cnf --host=localhost --user=root --password=mysql123 --port=6606 --datadir=/data/mysql_6606 --copy-back --target-dir=/db_backup/pro_15/backup/6626/full/20200618_053001
2.2 增量备份恢复
2.2.1 全备整理
innobackupex --apply-log --redo-only /backup/3306/full
2.2.2 第一次备份合并full
innobackupex --apply-log --redo-only --incremental-dir=/data/backup/inc1 /data/backup/full
2.2.3 第二次备份合并第一次
innobackupex --apply-log --incremental-dir=/data/backup/inc2 /data/backup/full
2.2.4 最后一次整理
innobackupex --apply-log /data/backup/full

3. binlog截取
show master status
show binlog events in 'mybinlog.****'
SHOW BINLOG EVENTS [IN 'log_name'] [FROM pos] [LIMIT [offset,] row_count]
3.1 截取一段节点的binlog,截取这段gtid组的操作。--exclude-gtids排除gtids。这里可以后面跟多个binlog文件。
mysqlbinlog --skip-gtids --include-gtids='1afe8136-601d-11e9-9022-000c2928f5dd:7-9' --exclude-gtids='dff98809-55c3-11e9-a58b-000c2928f5dd:4' /data/binlog/mysql-bin.000009 >/data/backup/binlog.sql
3.2 根据位置截取
mysqlbinlog --start-position=219 --stop-position=1347 /data/binlog/mysql-bin.000003 >/tmp/bin.sql
3.3 根据时间截取
mysqlbinlog --start-datetime='2019-05-06 17:00:00' --stop-datetime='2019-05-06 17:01:00' /data/binlog/mysql-bin.000004
3.4 查看二进制日志
mysqlbinlog --defaults-file=/usr/local/mysql/mysql6606.cnf --start-datetime='2020-05-01 19:00:00' --stop-datetime='2020-05-01 19:10:00' --base64-output=decode-rows -v mybinlog.000009 > /tmp/8.sql

4. 主从复制
use mysql;select * from slave_master_info;
stop slave;
reset slave all;
change master to master_host='10.5.11.21',master_user='repl',master_port=6606,master_password='RwFdd6ZpoKcfD07VgyHr',master_auto_position=1;
start slave;

5. ceph挂载db_backup
mount -t ceph 10.5.17.202:6789:/ /db_backup -o name=admin,secretfile=./admin.key

6. 数据库启动和关闭
6.1 启动服务
/usr/local/mysql/bin/mysqld_safe --defaults-file=/usr/local/mysql/mysql6606.cnf &
6.2 关闭服务
mysqladmin -uroot -p -S /data/mysql_6606/mysql.sock shutdown

6. 主从不一致需要跳过gtid操作
slave:
stop slavel;
set @@session.gtid_next='ed41df0a-05dc-11ea-a4b0-000c293a9237:520485'
begin;commit;
set @@session.gtid_next='automatic';

7. 慢日志,以查询数和查询行数排序
mysqldumpslow -s cr slow.log

8. 用户管理:
8.1 创建用户
create user test@'%' identified by '123';
grant select on *.* to test@'%';
8.2 更改密码
alter user test@'%' identified by '456'
8.3 查看用户权限
show grants for root@'localhost';
8.4 取消权限
revoke select on *.* from test@'%';

9. 死锁管理命令:
9.1 查看死锁状态
show status like 'innodb_row_lock%';
9.2 查看锁源
use sys
select locked_table,waiting_trx_id,waiting_pid,blocking_trx_id,blocking_pid from innodb_lock_waits\G
9.3 查找锁源id
select thread_id from performance_schema.threads where processlist_id=25;
9.4 找到锁源的sql语句
select * from performance_schema.events_statements_current where thread_id=65\G

10. cetus管理
10.1 启动
/usr/local/cetus/bin/cetus --defaults-file=/usr/local/cetus/conf/proxy.conf &
10.2 管理接口
/usr/bin/mysql -h10.5.22.42 -uadmin -P9606 -pRt57qHm8Xp91aFo3uExD
select * from backends
10.3 手动切换写读
/usr/bin/mysql -h10.5.22.42 -uadmin -P9606 -pRt57qHm8Xp91aFo3uExD -e " update backends set state='up' , type='rw' where address='10.5.22.41:6616';"

11. 删除二进制日志
mysql> show master logs;
+-----------------+------------+-----------+
| Log_name | File_size | Encrypted |
+-----------------+------------+-----------+
| mybinlog.004356 | 1073742346 | No |
| mybinlog.004357 | 1073749103 | No |
| mybinlog.004358 | 1073742486 | No |
| mybinlog.004359 | 1073747316 | No |
| mybinlog.004360 | 554989663 | No |
| mybinlog.004361 | 1073741982 | No |
| mybinlog.004362 | 1073743396 | No |
| mybinlog.004363 | 1073769737 | No |
| mybinlog.004364 | 1073742162 | No |
| mybinlog.004365 | 1073755841 | No |
| mybinlog.004366 | 1073742882 | No |
| mybinlog.004367 | 1073780415 | No |
| mybinlog.004368 | 1073743509 | No |
| mybinlog.004369 | 1073741875 | No |

查看当前binlog日志文件
mysql> show master status;'
+-----------------+-----------+--------------+------------------+---------------------------------------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+-----------------+-----------+--------------+------------------+---------------------------------------------------+
| mybinlog.004385 | 115387258 | | | 31654e9c-1197-11ea-8f74-000c29d32f03:1-4466952829 |
+-----------------+-----------+--------------+------------------+---------------------------------------------------+

删除二进制日志
mysql> purge binary logs to 'mybinlog.004383';


12. 初始化数据库
mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/opt/app1/data/mysql_6666

1、登录到mysql查看binlog
只查看第一个binlog文件的内容
mysql> show binlog events;
查看指定binlog文件的内容
mysql> show binlog events in 'mysql-bin.000002';
获取binlog文件列表
mysql> show binary logs;
如果需要过滤,只查询insert,update,delete的语句,可以这样写:
mysqlbinlog --no-defaults --database=raceEnroll binlogs.000078 |grep update |more
如果需要查询2017-09-17 07:21:09到2017-09-19 07:59:50 数据库为geeRunner 的操作日志,输入如下命令将数据写入到一个备用的txt即可。
mysqlbinlog --no-defaults --database=geeRunner --start-datetime="2017-09-17 07:21:09" --stop-datetime="2017-09-19 07:59:50" binlogs.000080 > sanjiaomao.txt
--insecure-registry 192.168.111.143:8088
查看数据库的执行频率
show 【session|global】 status;
查询自本次登陆以来的数据库操作,主要关心值的获取
show session status like 'Com_insert%';
show session status like 'Com_select%'
show session status like 'Com_update%';
show session status like 'Com_delete%';
查询自数据库服务启动以来的数据库操作,主要关心值的获取
show global status like 'Com_delete%';
show global status like 'Com_insert%';
show global status like 'Com_update%';
show global status like 'Com_select%';
查询自数据库innodb引擎的数据库操作,主要关心值的获取的是影响的行数
show session status like 'InnoDB_rows%';
show global status like 'InnoDB_rows%';
查看数据库的链接次数包含成功与不成功
show global status like 'connections';
show session status like 'connections';
查看数据库的工作的时间秒数
show session status like 'Uptime';
show global status like 'Uptime';
查看数据库的满查询的次数
show global status like 'Slow_queries';

相关内容

热门资讯

恩施旅游攻略5日游景点有哪些,... 出发前刷攻略刷到头秃,看到人均预算500元就能玩转恩施的帖子时,我直接笑出声——这年头旅游哪有这么便...
中山热门景点两日游攻略 中山旅游景点攻略:两天一日游,带你玩转中山! 嘿,计划来中山游玩的小伙伴们!是不是已经迫不及待想要开...
常熟人吃鱼的108种姿势:从科... 一条鲤鱼游出的千年文化密码 当苏州少年金耀星在天津全国烹饪大赛上,用迷你版果汁松鼠桂鱼斩获特金奖时,...
旅游还有哪些不开心的事 旅游中的“闹心”事儿,你遇到过几件? 旅游,本是一场逃离日常琐碎,奔赴诗和远方的美好旅程。然而,现...
陕西金延安端午文旅盛宴点燃文化... 又是一年端阳到,龙舟竞渡粽香飘。节日期间,陕西省延安市金延安旅游度假区将红色演艺与主题教育相结合,精...
去四川旅游攻略旅游团五日游要花... 标题:【我的四川五日游亲测报告:跟着本地导游乐乐玩转四川,花费竟如此实惠!】 四川旅游推荐!当地导游...
全球农创客训练营走进云南以“咖... 央广网北京6月2日消息(记者韩雪莹)据中央广播电视总台中国之声《新闻纵横》报道,一杯咖啡,可以让人头...
15道 旺销特色菜,创意融合 藜蒿炒腊肉 原料: 腊肉(肥三瘦七)300克,鄱阳湖藜蒿300克,韭菜段150克,盐、红辣椒段、蒜...
家里有个会做饭的男人太幸福了,... 姐妹们!你们知道家里有个会做饭的老公是什么体验吗?那就是——每天下班回家都能吃到热腾腾的饭菜,关键还...
原创 5... 姐妹们,今天给你们分享个我家每周必吃的省钱神菜—— 酸辣土豆丝!成本不到5块钱,10分钟出锅,每次炒...
原创 半... 朋友们,今天教你们一个偷懒都能被夸厨神的神仙做法! 只要电饭锅会煮饭,你就能做出甜到粘嘴唇的照烧五花...
原创 R... 曾经风头无两的韩国超级偶像Rain与他的妻子金泰熙已经携手走过七个年头,虽然外界对他们婚后生活的报道...
“龙腾端午·梧现精彩”非遗好市... 6月1日,由梧州市文化广电体育和旅游局主办的“龙腾端午·梧现精彩”非遗好市在梧州市西堤公园持续开展。...
上海海派旗袍文化节开幕,推出3... 静态展览,动态走秀,互动体验……6月1日,“旗韵绽芳华”——6·6上海海派旗袍文化节在张园拉开帷幕。...
华程国旅推出“欧洲循环巴士游” 英国当地时间5月27日下午,华程国旅集团TRIP2EU“欧洲循环巴士游”发布会伦敦站在伦敦千禧酒店举...
原创 6... “来来来,尝尝我们厂的窑鸡,特意给你加的菜!”何家劲笑容满面,将一整盘热腾腾的窑鸡推到黄日华面前。 ...
原创 以... #优质好文激励计划# “以前人人爱吃的小龙虾,为啥现在不火了?内行:4个原因很难改变” 家人们,谁...
吉木萨尔县第三届厦吉文化美食汇... 5月31日,为期3天的“百味醉天山 闽疆共飨宴”昌吉州旅游文化美食节系列活动之吉木萨尔县第三届厦吉文...
去四川旅游攻略当地团五天四晚要... 标题:去四川旅游攻略当地团五天四晚要花多少钱,驴友亲测!跟着乐乐玩转四川 四川旅游推荐!当地导游-乐...
上海迪士尼游客打架,属地部门:... 上海市公安局浦东分局官方微博6月1日消息,5月31日18时许,浦东公安分局接报警称迪士尼乐园内有人打...