-P# //指定数据库监听的端口,这里的#需用实际的端口号代替,如-P3306
备份所有数据库(全备):
[root@localhost ~]# mysqldump -uroot -predhat123 --all-databases > all-$(date ‘+%Y%m%d’).sql
[root@localhost ~]# ls
all-20210825.sql anaconda-ks.cfg
恢复完全备份:
[root@localhost ~]# mysql -uroot -predhat123 < all-20210825.sql
备份指定数据库:
[root@localhost ~]# mysqldump -uroot -predhat123 --databases hhr > hhr-$(date ‘+%Y+%m%d’).sql
[root@localhost ~]# ls
all-20210825.sql anaconda-ks.cfg hhr-20210825.sql
恢复指定库:
[root@localhost ~]# mysql -uroot -predhat123 < hhr-xxx.sql
备份指定数据库中的某一个表:
[root@localhost ~]# mysqldump -uroot -predhat123 hhr student > student-$(date ‘+%Y+%m%d’).sql
[root@localhost ~]# ls
all-20210825.sql hhr-20210825.sql
anaconda-ks.cfg student-20210825.sql
方法1:恢复表(指定库名)
[root@localhost ~]# mysql -uroot -predhat123 hhr < student-xxx.sql
方法2:在指定的库里恢复表
MariaDB [hhr]> source student-xxx.sql
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
…
…
Query OK, 0 rows affected (0.00 sec)
开启MySQL服务器的二进制日志功能
//在数据库中查看二进制日志是否开启
MariaDB [(none)]> show variables like ‘log_bin’;
±--------------±------+
| Variable_name | Value |
±--------------±------+
| log_bin | OFF |
±--------------±------+
1 row in set (0.001 sec)
//在配置文件中开启二进制日志
[root@hhr ~]# vim /etc/my.cnf.d/mariadb-server.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mariadb/mariadb.log
pid-file=/run/mariadb/mariadb.pid
server-id=1 #设置服务器标识符
log-bin=mysql_bin #开启二进制日志功能
//重启服务
[root@localhost ~]# systemctl restart mariadb.service
[root@hhr ~]# ls /var/lib/mysql/
aria_log.00000001 ibdata1 multi-master.info mysql_bin.000005 mysql_upgrade_info
aria_log_control ib_logfile0 mysql mysql_bin.000006 performance_schema
hhr ib_logfile1 mysql_bin.000003 mysql_bin.index
ib_buffer_pool ibtmp1 mysql_bin.000004 mysql.sock
//登录数据库查看二进制日志已经开启
MariaDB [(none)]> show variables like ‘log_bin’;
±--------------±------+
| Variable_name | Value |
±--------------±------+
| log_bin | ON |
±--------------±------+
1 row in set (0.001 sec)
//在数据库中查看有哪些二进制日志文件
MariaDB [(none)]> show binary logs;
±-----------------±----------+
| Log_name | File_size |
±-----------------±----------+
| mysql_bin.000003 | 1446 |
| mysql_bin.000004 | 907269 |
| mysql_bin.000005 | 365 |
| mysql_bin.000006 | 342 |
±-----------------±----------+
4 rows in set (0.000 sec)
对数据库进行完全备份
//查看数据库数据
MariaDB [hhr]> show databases;
±-------------------+
| Database |
±-------------------+
| hhr |
| information_schema |
| mysql |
| performance_schema |
±-------------------+
4 rows in set (0.000 sec)
MariaDB [hhr]> show tables;
±--------------+
| Tables_in_hhr |
±--------------+
| jj |
| student |
±--------------+
2 rows in set (0.000 sec)
MariaDB [hhr]> select * from jj;
±-----±---------+
| id | name |
±-----±---------+
| 1 | zhangsan |
| 2 | lisi |
| 3 | wangwu |
±-----±---------+
3 rows in set (0.000 sec)
MariaDB [hhr]> select * from student;
±—±------------±-----+
| id | name | age |
±—±------------±-----+
| 1 | tom | 20 |
| 2 | jerry | 23 |
| 3 | wangqing | 25 |
| 4 | sean | 28 |
| 5 | zhangshan | 26 |
| 7 | lisi | 50 |
| 8 | chenshuo | 10 |
| 9 | wangwu | 100 |
| 10 | qiuyi | 15 |
| 11 | qiuxiaotian | 20 |
±—±------------±-----+
10 rows in set (0.000 sec)
//存放密码
[root@hhr ~]# cat .my.cnf
[client]
user=root
password=redhat123
//完全备份
[root@hhr ~]# mysqldump --single-transaction --flush-logs --master-data=2 --all-databases --delete-master-logs > all-20210826.sql
[root@hhr ~]# ls
all-20210825.sql all-20210826.sql student-20210825.sql
//添加新内容
MariaDB [(none)]> select * from hhr.jj;
±-----±---------+
| id | name |
±-----±---------+
| 1 | zhangsan |
| 2 | lisi |
| 3 | wangwu |
±-----±---------+
3 rows in set (0.001 sec)
MariaDB [hhr]> insert jj values (4,‘aixinjueluo’);
Query OK, 1 row affected (0.001 sec)
MariaDB [hhr]> select * from jj;
±-----±------------+
| id | name |
±-----±------------+
| 1 | zhangsan |
| 2 | lisi |
| 3 | wangwu |
| 4 | aixinjueluo |
±-----±------------+
4 rows in set (0.000 sec)
//修改内容
MariaDB [hhr]> update jj set id = 10 where name = ‘zhangsan’;
Query OK, 1 row affected (0.001 sec)
Rows matched: 1 Changed: 1 Warnings: 0
MariaDB [hhr]> select * from jj;
±-----±------------+
| id | name |
±-----±------------+
| 10 | zhangsan |
| 2 | lisi |
| 3 | wangwu |
| 4 | aixinjueluo |
±-----±------------+
4 rows in set (0.000 sec)
mysql差异备份恢复
模拟误删数据
MariaDB [hhr]> drop database hhr;
Query OK, 2 rows affected (0.005 sec)
MariaDB [(none)]> show databases;
±-------------------+
| Database |
±-------------------+
| information_schema |
| mysql |
| performance_schema |
±-------------------+
3 rows in set (0.000 sec)
刷新创建新的二进制日志
[root@hhr ~]# mysql -e “show binary logs;”
±-----------------±----------+
| Log_name | File_size |
±-----------------±----------+
| mysql_bin.000007 | 867 |
±-----------------±----------+
1 row in set (0.000 sec)
[root@hhr ~]# ls /var/lib/mysql/
aria_log.00000001 ibdata1 ibtmp1 mysql_bin.000007 mysql_upgrade_info
aria_log_control ib_logfile0 multi-master.info mysql_bin.index performance_schema
ib_buffer_pool ib_logfile1 mysql mysql.sock
//刷新创建新的二进制日志
[root@hhr ~]# mysqladmin flush-logs
[root@hhr ~]# ls /var/lib/mysql/
aria_log.00000001 ibdata1 ibtmp1 mysql_bin.000007 mysql.sock
aria_log_control ib_logfile0 multi-master.info mysql_bin.000008 mysql_upgrade_info
ib_buffer_pool ib_logfile1 mysql mysql_bin.index performance_schema
[root@hhr ~]# mysql -e “show binary logs;”
±-----------------±----------+
| Log_name | File_size |
±-----------------±----------+
| mysql_bin.000007 | 914 |
| mysql_bin.000008 | 484032 |
±-----------------±----------+
恢复完全备份
[root@hhr ~]# mysql < all-20210826.sql
[root@hhr ~]# mysql -e “show databases;”
±-------------------+
| Database |
±-------------------+
| hhr |
| information_schema |
| mysql |
| performance_schema |
±-------------------+
4 rows in set (0.000 sec)
[root@hhr ~]# mysql -e “show tables from hhr;”
±--------------+
| Tables_in_hhr |
±--------------+
| jj |
| student |
±--------------+
[root@hhr ~]# mysql -e “select * from hhr.jj;”
±-----±---------+
| id | name |
±-----±---------+
| 1 | zhangsan |
| 2 | lisi |
| 3 | wangwu |
±-----±---------+
//在数据库中查看有哪些二进制日志文件
[root@hhr ~]# mysql
MariaDB [hhr]> show binary logs;
±-----------------±----------+
| Log_name | File_size |
±-----------------±----------+
| mysql_bin.000007 | 914 |
| mysql_bin.000008 | 483675 |
±-----------------±----------+
2 rows in set (0.000 sec)
//在数据库中查看正在写入的是哪个二进制日志文件
MariaDB [hhr]> show master status;
±-----------------±---------±-------------±-----------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
±-----------------±---------±-------------±-----------------+
| mysql_bin.000008 | 483675 | | |
±-----------------±---------±-------------±-----------------+
1 row in set (0.000 sec)
//检查误删数据库的位置在什么地方
MariaDB [hhr]> show binlog events in ‘mysql_bin.000007’;
±-----------------±----±------------------±----------±------------±---------------------------------------------------------+
| Log_name | Pos | Event_type | Server_id | End_log_pos | Info |
±-----------------±----±------------------±----------±------------±---------------------------------------------------------+
| mysql_bin.000007 | 4 | Format_desc | 1 | 256 | Server ver: 10.3.28-MariaDB-log, Binlog ver: 4 |
| mysql_bin.000007 | 256 | Gtid_list | 1 | 299 | [0-1-253] |
| mysql_bin.000007 | 299 | Binlog_checkpoint | 1 | 342 | mysql_bin.000006 |
| mysql_bin.000007 | 342 | Binlog_checkpoint | 1 | 385 | mysql_bin.000007 |
| mysql_bin.000007 | 385 | Gtid | 1 | 427 | BEGIN GTID 0-1-254 |
| mysql_bin.000007 | 427 | Query | 1 | 527 | use hhr
; insert jj values (4,‘aixinjueluo’) |
| mysql_bin.000007 | 527 | Xid | 1 | 558 | COMMIT /* xid=461 */ |
| mysql_bin.000007 | 558 | Gtid | 1 | 600 | BEGIN GTID 0-1-255 |
| mysql_bin.000007 | 600 | Query | 1 | 711 | use hhr
; update jj set id = 10 where name = ‘zhangsan’ |
| mysql_bin.000007 | 711 | Xid | 1 | 742 | COMMIT /* xid=463 */ |
| mysql_bin.000007 | 742 | Gtid | 1 | 784 | GTID 0-1-256 |
| mysql_bin.000007 | 784 | Query | 1 | 867 | drop database hhr |
| mysql_bin.000007 | 867 | Rotate | 1 | 914 | mysql_bin.000008;pos=4 |
±-----------------±----±------------------±----------±------------±---------------------------------------------------------+
13 rows in set (0.000 sec)
//使用mysqlbinlog恢复差异备份
这里的784是你开始删除库之前的修改过数据的位置
[root@hhr ~]# mysqlbinlog --stop-position=784 /var/lib/mysql/mysql_bin.000007 | mysql
[root@hhr ~]# mysql -e “select * from hhr.jj;”
±-----±------------+
| id | name |
±-----±------------+
| 10 | zhangsan |
| 2 | lisi |
| 3 | wangwu |
| 4 | aixinjueluo |
±-----±------------+
===================================================================
概述
“Group By”从字面意义上理解就是根据“By”指定的规则对数据进行分组,所谓的分组就是将一个“数据集”划分成若干个“小区域”,然后针对若干个“小区域”进行数据处理。
Group By与聚合函数
| 函数 | 作用 |
| — | :-- |
| sum(列名) | 求和 |
| max(列名) | 最大值 |
| min(列名) | 最小值 |
| avg(列名) | 平均值 |
| count(列名) | 统计记录数 |
//创建表
MariaDB [hhr]> create table test (id varchar(20),name varchar(20), company varchar(20));
Query OK, 0 rows affected (0.007 sec)
//查看表
MariaDB [hhr]> show tables;
±--------------+
| Tables_in_hhr |
±--------------+
| student |
| test |
±--------------+
2 rows in set (0.000 sec)
//查看表结构
MariaDB [hhr]> desc test;
±--------±------------±-----±----±--------±------+
| Field | Type | Null | Key | Default | Extra |
±--------±------------±-----±----±--------±------+
| id | varchar(20) | YES | | NULL | |
| name | varchar(20) | YES | | NULL | |
| company | varchar(20) | YES | | NULL | |
±--------±------------±-----±----±--------±------+
3 rows in set (0.001 sec)
//插入数据
MariaDB [hhr]> insert test values(1,‘a’,‘jia’),(1,‘a’,‘jia’),(1,‘a’,‘jia’),(1,‘a’,‘jia’),(1,‘a’,‘yi’),(1,‘b’,‘yi’),(1,‘b’,‘yi’),(1,‘b’,‘yi’);
Query OK, 8 rows affected (0.001 sec)
Records: 8 Duplicates: 0 Warnings: 0
//查看数据
MariaDB [hhr]> select * from test;
±-----±-----±--------+
| id | name | company |
±-----±-----±--------+
| 1 | a | jia |
| 1 | a | jia |
| 1 | a | jia |
| 1 | a | jia |
| 1 | a | yi |
| 1 | b | yi |
| 1 | b | yi |
| 1 | b | yi |
±-----±-----±--------+
8 rows in set (0.000 sec)
MariaDB [hhr]> select * from student;
±—±------------±-----+
| id | name | age |
±—±------------±-----+
| 1 | tom | 20 |
| 2 | jerry | 23 |
| 3 | wangqing | 25 |
| 4 | sean | 28 |
| 5 | zhangshan | 26 |
| 7 | lisi | 50 |
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)
Kafka实战笔记
关于这份笔记,为了不影响大家的阅读体验,我只能在文章中展示部分的章节内容和核心截图
- Kafka入门
- 为什么选择Kafka
- Karka的安装、管理和配置
- Kafka的集群
- 第一个Kafka程序
afka的生产者
- Kafka的消费者
- 深入理解Kafka
- 可靠的数据传递
- Spring和Kalka的整合
- Sprinboot和Kafka的整合
- Kafka实战之削峰填谷
- 数据管道和流式处理(了解即可)
- Kafka实战之削峰填谷
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
s/e5c14a7895254671a72faed303032d36.jpg" alt=“img” style=“zoom: 33%;” />
Kafka实战笔记
关于这份笔记,为了不影响大家的阅读体验,我只能在文章中展示部分的章节内容和核心截图
[外链图片转存中…(img-xsbBC8BI-1713248576840)]
- Kafka入门
- 为什么选择Kafka
- Karka的安装、管理和配置
[外链图片转存中…(img-XfxUvDBQ-1713248576840)]
- Kafka的集群
- 第一个Kafka程序
- [外链图片转存中…(img-ro7q38oi-1713248576840)]
afka的生产者
[外链图片转存中…(img-BExz5MGK-1713248576841)]
- Kafka的消费者
- 深入理解Kafka
- 可靠的数据传递
[外链图片转存中…(img-N4aD88Gs-1713248576841)]
[外链图片转存中…(img-qWGscMSm-1713248576841)]
- Spring和Kalka的整合
- Sprinboot和Kafka的整合
- Kafka实战之削峰填谷
- 数据管道和流式处理(了解即可)
[外链图片转存中…(img-nd8KO1vm-1713248576841)]
- Kafka实战之削峰填谷
[外链图片转存中…(img-0dBdjR5i-1713248576841)]
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!