mysql5.7常用操作命令手册
文章目录
- 前言
- 一、关闭mysql服务
- 1.mha节点,关闭MHA高可用
- 2.主节点,摘掉vip,停掉mysql服务
- 3.从节点,停掉mysql服务
- 二、启动mysql
- 1.启动数据库顺序
- 2.主节点,登陆数据库检查主库状态,将主库改成读写状态
- 3.从节点启动配置数据库,检查从库状态,启动从库,检查主从同步状态
- 4.主节点配置VIP,挂载VIP
- 三、查看数据库字符集和排序规则并创建数据库
- 四、查看表字段的注释信息
- 五、修改表字段对应的长度
- 六、清理binlog
- 七、查看活跃的session
- 八、查看会话的历史查询记录
- 九、线程内存使用统计
- 十、mysqldump备份表
- 十一、mysqldump备份单库
- 十二、查看正在进行中的事务
- 十三、查看lock阻塞信息
- 十四、查看阻塞者并解除锁
- 十五、获取表中未使用索引信息
- 十六、获取冗余索引
- 十七、跳过GTID
- 十八、binlog解析
- 十九、gh-ost在线表结构变更 DDL
- 二十、xtrabackup物理备份
- 二十一、慢查询日志解析top10性能sql查询
- 二十二、查询从库状态
- 二十三、查看某数据库中的所有表
- 二十四、查看库大小
- 二十五、查看表大小
- 二十六、查看表有多少条数据量
- 二十七、根据表名找对应的库名
- 二十八、查看表的数据并将结果导出为csv格式
- 二十九、导出数据为csv格式并携带表头
- 三十、查看mysql最近执行的语句
- 三十一、查看mysql正在执行的sql
- 三十二、查看mysql设置的连接数
- 三十三、查看mysql设置的读权限
- 三十四、创建用户并授权
- 三十五、修改存储引擎
- 三十六、查看默认存储引擎
- 三十七、查看存储引擎设置
前言
本篇文章主要整理了以下在MySQL5.7环境中常用的一些命令,希望对大家有用。
一、关闭mysql服务
别轻易停数据库
关闭MHA高可用--->主库摘掉VIP--->关闭主库--->关闭从库
1.mha节点,关闭MHA高可用
systemctl stop daemontools.service
2.主节点,摘掉vip,停掉mysql服务
ifconfig bond0:0 down
/etc/init.d/mysql3306 stop(需要数据库root密码)
ps -ef|grep mysqld 检查确认数据库是否关闭
3.从节点,停掉mysql服务
/etc/init.d/mysql3306 stop(需要数据库root密码)
ps -ef|grep mysqld 检查确认数据库是否关闭
二、启动mysql
1.启动数据库顺序
首先启动主库---->启动从库---->挂载VIP--->启动MHA高可用
2.主节点,登陆数据库检查主库状态,将主库改成读写状态
/etc/init.d/mysql3306 start
/export/servers/app/mysql-5.7.42/bin/mysql -uroot -p -S /export/servers/data/my3306/run/mysqld.sockroot@localhost:mysqld.sock : (none) 09:05:14> show slave status\G;
Empty set (0.00 sec) 主机点显示的信息为空ERROR:
No query specified
mysql> show variables like '%read_only%';
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| innodb_read_only | OFF |
| read_only | ON |
| super_read_only | ON |
| transaction_read_only | OFF |
| tx_read_only | OFF |
+-----------------------+-------+
5 rows in set (0.00 sec)
set global read_only=off;
set global super_read_only=off;
3.从节点启动配置数据库,检查从库状态,启动从库,检查主从同步状态
/etc/init.d/mysql3306 start
/export/servers/app/mysql-5.7.22/bin/mysql -uroot -p -S /export/servers/data/my3306/run/mysqld.sock
start slave;
show slave status\G;
4.主节点配置VIP,挂载VIP
/sbin/ifconfig 网卡名称 vip地址 netmask 255.255.255.0 && /sbin/arping -c 3 -s vip地址 -I bond0 网关地址
三、查看数据库字符集和排序规则并创建数据库
mysql> SELECT SCHEMA_NAME, DEFAULT_CHARACTER_SET_NAME, DEFAULT_COLLATION_NAME
FROM information_schema.SCHEMATA
WHERE
SCHEMA_NAME = 'bank_data'; #替换为需要查看的库名mysql> create database bank_data character set utf8 collate utf8_general_ci; #根据查找出来的信息创建对应的库
四、查看表字段的注释信息
mysql > show create table 表名 \G;
五、修改表字段对应的长度
mysql > ALTER TABLE `表名` MODIFY COLUMN `字段名` varchar(500)修改后的长度 NOT NULL DEFAULT '' COMMENT '通道名称'; 如果修改之前查出来该字段有对应的注释信息和不为空、默认值,则再修改时照常添加上
六、清理binlog
mysql >PURGE BINARY LOGS BEFORE '2021-10-12 17:00:00'; #删除指定日期之前的binlog
mysql > show master logs;
#删除mysql-bin.000006之前的binlog日志
mysql > purge binary logs to 'mysql-bin.000006';
七、查看活跃的session
然后输出kill sql
mysql > select concat("kill ",id,";"),id,user,host,db,state,command,time,left(info,50) from information_schema.processlist where command<>'sleep' and command<>'Binlog Dump GTID' order by time;
八、查看会话的历史查询记录
mysql > SELECTb.processlist_id,c.db,c.user,a.sql_text,c.command,c.time,c.state,DATE_SUB(NOW(), INTERVAL (SELECT VARIABLE_VALUE FROM performance_schema.global_status WHERE variable_name='UPTIME') - a.TIMER_START * 1e-12 SECOND) AS start_time,DATE_SUB(NOW(), INTERVAL (SELECT VARIABLE_VALUE FROM performance_schema.global_status WHERE variable_name='UPTIME') - a.TIMER_START * 1e-12 SECOND) AS TIMER_END
FROMperformance_schema.events_statements_history a
JOINperformance_schema.threads b USING (thread_id)
JOINinformation_schema.processlist c ON b.processlist_id = c.id
WHEREc.id = 284 #这个id使用show processlist命令查询即可
ORDER BYa.EVENT_ID;
九、线程内存使用统计
mysql > SELECTmt.thread_id AS thread_id,SUM(mt.current_count_used) AS current_count_used,CAST(ROUND(SUM(mt.current_number_of_bytes_used) / 1024 / 1024) AS SIGNED) AS current_allocated_size_m,MAX(mt.current_number_of_bytes_used) AS current_max_alloc,t.name,t.processlist_db,t.processlist_info,t.processlist_command,t.processlist_host,t.processlist_time,t.processlist_user,t.processlist_id,t.processlist_state,t.parent_thread_id,t.thread_os_id
FROMperformance_schema.memory_summary_by_thread_by_event_name mt
INNER JOINperformance_schema.threads t ON mt.thread_id = t.thread_id
WHEREt.processlist_db IS NOT NULLAND t.name = 'thread/sql/one_connection'
GROUP BYmt.thread_id
ORDER BYcurrent_allocated_size_m;
十、mysqldump备份表
[root@python3 tmp]# /export/servers/app/mysql-5.7.42/bin/mysqldump -uroot -p -S \
/export/servers/data/my3306/run/mysqld.sock --default-character-set=utf8 --opt --hex-blob --skip-tz-utc \--add-drop-database=FALSE --add-drop-table=FALSE --single-transaction --set-gtid-purged=OFF \--log-error=sbtest1.full.sql.`date +%Y%m%d_%H%M%S`.err \dbtest --tables sbtest1 > sbtest1.full.sql.`date +%Y%m%d_%H%M%S` 2>sbtest1.full.sql.`date +%Y%m%d_%H%M%S`.log
参数解释
--default-character-set=utf8 指定备份的字符集
--opt 启用一组优化选项,包括 --quick、--add-drop-table、--add-locks、--create-options、--disable-keys 和 --extended-insert。这是一个常用的选项组合,用于提高备份速度并确保备份数据的一致性
--hex-blob 以十六进制格式备份 BLOB 类型的字段。适用于二进制数据,以避免数据丢失或损坏
--skip-tz-utc 备份时不会在备份文件的最前几行添加SET TIME_ZONE='+00:00'
--add-drop-database=FALSE 不在备份中添加 DROP DATABASE 语句。如果数据库已经存在,备份将不会包含删除现有数据库的语句
--add-drop-table=FALSE 不在备份中添加 DROP TABLE 语句。备份将不会包含删除现有表的语句。
--single-transaction 在一个事务中进行备份,这样可以在备份期间保持数据一致性。适用于使用事务的存储引擎(例如 InnoDB)
--set-gtid-purged=OFF 开启了GTID功能的数据库,备份时需要添加该参数 。不设置 GTID(全局事务标识)的被清除信息。适用于某些情况下需要禁用 GTID 记录
-R 备份存储过程(必须使用超管用户备份)
--tables 指定表名
十一、mysqldump备份单库
[root@python3 tmp]# dbname=visualdata
[root@python3 tmp]# /export/servers/app/mysql-5.7.22/bin/mysqldump -uroot -S \/export/servers/data/my${port}/run/mysqld.sock -p --default-character-set=utf8 --opt --hex-blob --skip-tz-utc \--add-drop-database=FALSE --add-drop-table=FALSE --single-transaction --set-gtid-purged=OFF \--log-error=${dbname}.full.sql.`date +%Y%m%d_%H%M%S`.err \${dbname} > ${dbname}.full.sql.`date +%Y%m%d_%H%M%S` 2>${dbname}.full.sql.`date +%Y%m%d_%H%M%S`.log
十二、查看正在进行中的事务
mysql >SELECT * FROM INFORMATION_SCHEMA.INNODB_TRX;
Kill 查出来的trx_mysql_thread_id 即可杀掉当前的大事务
十三、查看lock阻塞信息
mysql > show engine innodb status\G;
mysql > select * from sys.innodb_lock_waits; #用于获取 InnoDB 存储引擎中关于锁等待的详细信息。这个视图显示了哪些事务正在等待其他事务持有的锁,包括事务 ID、被等待的锁以及相关的资源。这对于诊断和分析数据库中的锁竞争问题非常有帮助。
mysql > select * from information_schema.INNODB_LOCKS; #查看当前锁定的事务
mysql > select * from information_schema.INNODB_LOCK_WAITS; #查看当前等锁的事务
mysql > select * from information_schema.INNODB_TRX order by trx_started desc; #查看进行中的事务并按事务开始时间倒序排序
十四、查看阻塞者并解除锁
mysql > SELECT current_timestamp,pw.user as pw_user,pw.db as pw_db,substring_index(pw.host,':',1) as pw_host,pw.COMMAND as pw_command,pw.state as pw_state,pw.INFO as pw_sqltext,pw.id as pw_processid,pw.TIME as pw_time,`r`.`trx_wait_started` AS `waiting_started`,timediff( now(), `r`.`trx_wait_started` ) AS `waiting_age`,timestampdiff( SECOND, `r`.`trx_wait_started`, now() ) AS `waiting_age_secs`,`rl`.`lock_table` AS `waiting_locked_table`,`rl`.`lock_index` AS `waiting_locked_index`,`rl`.`lock_type` AS `waiting_locked_type`,`rl`.`lock_data` AS `waiting_locked_data`,`rl`.`lock_mode` AS `waiting_lock_mode`,`r`.`trx_mysql_thread_id` AS `waiting_pid`,r.trx_isolation_level AS waiting_isolation_level,`r`.`trx_id` AS `waiting_trx_id`,`r`.`trx_started` AS `waiting_trx_started`,timediff(now(), `r`.`trx_started`) AS `waiting_trx_age`,`r`.`trx_rows_locked` AS `waiting_trx_rows_locked`,`r`.`trx_rows_modified` AS `waiting_trx_rows_modified`,`r`.`trx_query` AS `waiting_query`,`rl`.`lock_id` AS `waiting_lock_id`,`b`.`trx_id` AS `blocking_trx_id`,`b`.`trx_mysql_thread_id` AS `blocking_pid`,b.trx_isolation_level AS block_isolation_level,`b`.`trx_query` AS `blocking_query`,`bl`.`lock_id` AS `blocking_lock_id`,`bl`.`lock_mode` AS `blocking_lock_mode`,`b`.`trx_started` AS `blocking_trx_started`,timediff(now(), `b`.`trx_started`) AS `blocking_trx_age`,`b`.`trx_rows_locked` AS `blocking_trx_rows_locked`,`b`.`trx_rows_modified` AS `blocking_trx_rows_modified`,concat( 'KILL ', `b`.`trx_mysql_thread_id`, ';' ) AS `kill_sql`,
pb.user as pb_user,pb.db as pb_db,substring_index(pb.host,':',1) as pb_host,pb.COMMAND as pb_command,pb.state as pb_state,pb.INFO as pb_sqltext,pb.id as pb_processid,pw.TIME as pw_time
FROM`information_schema`.`innodb_lock_waits` `w`
JOIN `information_schema`.`innodb_trx` `b` ON `b`.`trx_id` = `w`.`blocking_trx_id`
JOIN `information_schema`.`innodb_trx` `r` ON `r`.`trx_id` = `w`.`requesting_trx_id`
JOIN `information_schema`.`innodb_locks` `bl` ON `bl`.`lock_id` = `w`.`blocking_lock_id`
JOIN `information_schema`.`innodb_locks` `rl` ON `rl`.`lock_id` = `w`.`requested_lock_id`
JOIN `information_schema`.`processlist` `pw` ON `pw`.`id` = `r`.`trx_mysql_thread_id`
JOIN `information_schema`.`processlist` `pb` ON `pb`.`id` = `b`.`trx_mysql_thread_id`
ORDER BY`r`.`trx_id`;
十五、获取表中未使用索引信息
mysql> select * from sys.schema_unused_indexes a where a.object_schema='dbtest' and a.object_name in ('sbtest2') ORDER BY a.object_name;
+---------------+-------------+------------+
| object_schema | object_name | index_name |
+---------------+-------------+------------+
| dbtest | sbtest2 | k_2 |
+---------------+-------------+------------+
1 row in set (0.00 sec)
十六、获取冗余索引
mysql > select a.table_schema,a.table_name,a.redundant_index_name,a.redundant_index_columns,a.dominant_index_name,a.dominant_index_columns from sys.schema_redundant_indexes a where table_schema != 'performance_schema';
十七、跳过GTID
mysql > SET @@SESSION.GTID_NEXT= 'ece7b132-33c5-11e8-bfd6-e8611f23c126:256649553';
mysql > begin;
mysql > commit;
mysql > SET @@SESSION.GTID_NEXT= 'AUTOMATIC';
十八、binlog解析
mysqlbinlog --base64-output=DECODE-ROWS -vv mysql_bin.000008 > mysql_bin.000008.log
十九、gh-ost在线表结构变更 DDL
gh-ost --user="root" --password="******" --host=10.241.241.224 --port=3306 --database="order" --table="orderinfo" \
--alter=" add key ind_account (trans_account) " --allow-on-master --initially-drop-old-table \
--initially-drop-ghost-table --allow-nullable-unique-key --max-load=Threads_connected=1500 \
--critical-load=Threads_connected=4000 --chunk-size=200000 --max-lag-millis=1500 --initially-drop-socket-file \
--verbose --execute
二十、xtrabackup物理备份
innobackupex --defaults-file=${mycnfdir} --user=$username --password=$passwd --lock-ddl-per-table --slave-info ${backup_path} --stream=tar | gzip - > ${backup_path}/full_${current_day}bak.tar.gz--lock-per-table: 在备份期间对每个表进行DDL锁定,确保表结构的一致性
--slave-info: 包括备份中的主从信息
--stream=tar: 将备份数据流式传输到tar文件中
|gzip - > ${backup_path}/full_${current_day}bak.tar.gz :通过管道将tar文件的输出压缩为gzip格式的文件,并将文件保存到.tar.gz中
-R: 备份的同时也备份存储过程(前提是必须使用超管用户来执行备份指令,且数据库开启了存储过程)
二十一、慢查询日志解析top10性能sql查询
pt-query-digest --type slowlog --since "2021-05-22 17:01:00" --until "2021-05-22 17:05:00" slow.log > slow.log.txt
二十二、查询从库状态
mysql >show slave status\G;
二十三、查看某数据库中的所有表
mysql >use information_schema
mysql > select * from tables where table_schema=upper('foreigntrade_db');
#foreigntrade_db 替换为为库名
二十四、查看库大小
mysql > use information_schema
mysql > select sum(data_length)/1024/1024/1024 from tables where table_schema=upper('foreigntrade_db');
#foreigntrade_db 替换为为库名
#该语句出来是GB单位,如果要为MB,则为/1024/1024
二十五、查看表大小
mysql > use information_schema
mysql > select sum(data_length)/1024/1024/1024 from tables where table_schema=upper('foreigntrade_db') and table_name='for_access_manifest';
#首先进入到information_schema库中
#注意替换foreigntrade_db库名和for_access_manifest表名
#该语句出来是GB单位,如果要为MB,则为/1024/1024
#upper()函数对数据库名进行了转换,将其转换为大写形式,如果库名本身是小写,则此处不需要该函数mysql > SELECT CONCAT(SUM(data_length)/1024/1024, ' MB') AS size FROM information_schema.tables WHERE table_schema = upper('foreigntrade_db') AND table_name = 'for_access_manifest';
#将获得一个名为'size'的结果列,其中包含数据大小以MB为单位的字符串。例如,结果可能类似于"10.5 MB"。#该语句也能查表空间大小,结果以KB显示
mysql > select table_name,concat((avg_row_length*table_rows+index_length)/1024,'KB')as size from tables where table_schema='school' and table_name='student';
二十六、查看表有多少条数据量
mysql > select count(*) from 库名.表名;
二十七、根据表名找对应的库名
mysql> SELECT TABLE_SCHEMA, TABLE_NAME FROM information_schema.TABLES WHERE TABLE_NAME = '已知的表名';
二十八、查看表的数据并将结果导出为csv格式
mysql > SELECT column1, column2, ... INTO OUTFILE '/tmp/back.csv' FROM your_table WHERE your_conditions;#一般指定导出目录为tmp目录,就不会报错‘权限不足问题’
二十九、导出数据为csv格式并携带表头
mysql > SELECT 'id', 'deleted', 'created_time', 'modified_time', 'created_user' #必须是表中的字段和下方是select保持一致
UNION ALL
SELECT id, deleted, created_time, modified_time, created_user
from b_incident
WHERE incident_state = 'incident_done'
INTO OUTFILE '/tmp/incident.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n';
三十、查看mysql最近执行的语句
先查看一下二进制的记录日志是否打开
mysql > show variables where Variable_name="general_log"; #输出为on为打开,反之为关闭
mysql > set global general_log=on;可以设置打开
然后确认一下默认的log产生在哪里
mysql > show variables where Variable_name="general_log_file"; #查看
然后去查出来的指定位置去查看即可
三十一、查看mysql正在执行的sql
mysql > select * from information_schema.processlist where info is not null;
可查看正在执行sql的ID、用户、主机、数据库库名、命令(增删改查)、执行时间、状态、执行的sql
可以查找出来一直长时间挂着是事务,通过ID进行kill 操作
三十二、查看mysql设置的连接数
mysql > show variables like '%conn%';
+-----------------------------------------------+-----------------+
| Variable_name | Value |
+-----------------------------------------------+-----------------+
| character_set_connection | utf8 |
| collation_connection | utf8_general_ci |
| connect_timeout | 10 |
| disconnect_on_expired_password | ON |
| init_connect | |
| max_connect_errors | 2000 |
| max_connections | 2080 |
| max_user_connections | 1000 |
| performance_schema_session_connect_attrs_size | 512 |
+-----------------------------------------------+-----------------+
三十三、查看mysql设置的读权限
mysql > show variables like '%read_only%';
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| innodb_read_only | OFF |
| read_only | ON |
| super_read_only | ON |
| transaction_read_only | OFF |
| tx_read_only | OFF |
+-----------------------+-------+
三十四、创建用户并授权
mysql > grant select,update,insert,delete on yz_work.* to 'pull_data_XZSPJ'@'192.168.65.11' identified by 'Vs$SJ&ROuNPxUHyN';
三十五、修改存储引擎
mysql > alter table 表名 engine=innodb;
三十六、查看默认存储引擎
mysql >select @@default_storage_engine;
三十七、查看存储引擎设置
mysql> show engines;
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine | Support | Comment | Transactions | XA | Savepoints |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| InnoDB | DEFAULT | Supports transactions, row-level locking, and foreign keys | YES | YES | YES |
| MRG_MYISAM | YES | Collection of identical MyISAM tables | NO | NO | NO |
| MEMORY | YES | Hash based, stored in memory, useful for temporary tables | NO | NO | NO |
| BLACKHOLE | YES | /dev/null storage engine (anything you write to it disappears) | NO | NO | NO |
| MyISAM | YES | MyISAM storage engine | NO | NO | NO |
| CSV | YES | CSV storage engine | NO | NO | NO |
| ARCHIVE | YES | Archive storage engine | NO | NO | NO |
| PERFORMANCE_SCHEMA | YES | Performance Schema | NO | NO | NO |
| FEDERATED | NO | Federated MySQL storage engine | NULL | NULL | NULL |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
相关文章:
mysql5.7常用操作命令手册
文章目录 前言一、关闭mysql服务1.mha节点,关闭MHA高可用2.主节点,摘掉vip,停掉mysql服务3.从节点,停掉mysql服务 二、启动mysql1.启动数据库顺序2.主节点,登陆数据库检查主库状态,将主库改成读写状态3.从节点启动配置数据库&…...
前端组件库Element UI 的使用
一、准备工作 1.确保安装了开发软件 VS Code(此处可查阅安装 VS Code教程),确保相关插件安装成功 2.安装Node.js 和创建Vue项目(此处可查阅安装创建教程) 3.成功在VS Code运行一个Vue项目(此处可查阅运行…...
【C++ 基础数学 】2121. 2615相同元素的间隔之和|1760
本文涉及的基础知识点 基础数学 LeetCode2121. 相同元素的间隔之和 难度分:1760 令2165,和此题几乎相等。 给你一个下标从 0 开始、由 n 个整数组成的数组 arr 。 arr 中两个元素的 间隔 定义为它们下标之间的 绝对差 。更正式地,arr[i] 和…...
从手动测试菜鸟,到自动化测试老司机,实现自动化落地
虽然许多伙伴是一个测试老人了,但是基本上所有的测试经验都停留在手工测试方面,对于自动化测试方面的实战经验少之又少。 其实,究其原因:一方面是,自动化方面不求上进,觉得会手工测试就可以了,自…...
docker zookeeper集群启动报错:Cannot open channel to * at election address /ip:3888
下面几点需要注意的: 1、确认在每个$zookeeper_home/data/myid中有对应数字 2、是否关闭防火墙:systemctl stop firewalld,systemctl disable firewalld 3、zoo.cfg中的server需要写成以下形式的: 假如有两台机器,1…...
【Linux探索学习】第一弹——Linux的基本指令(上)——开启Linux学习第一篇
前言: 在进入Linux学习之前,我们首先要先做好以下两点:1、已经基本掌握C语言或C,2、已经配置好了Linux的环境,做完以上两点后我们就开始Linux的学习,今天我们首先要学习的就是Linux中最基础的操作ÿ…...
3.Vue2结合element-ui实现国际化多语言i18n
1.安装vue-i18n npm install vue-i18n8.2.1说明:Vue2使用vue-i18n是8.x,Vue3使用的版本是9.x以上,使用错了会导致报错 2.创建多语言文件 在src/下创建src/lang/langs/zh.js和src/lang/langs/en.js两个文件,里面内容如下&#x…...
整数二分算法和浮点数二分算法
整数二分算法和浮点数二分算法 二分 现实中运用到二分的就是猜数字的游戏 假如有A同学说B同学所说数的大小,B同学要在1~100中间猜中数字65,当B同学每次说的数都是范围的一半时这就算是一个二分查找的过程 二分查找的前提是这个数字序列要有单调性 基…...
智能回收箱的功能和使用步骤介绍
智能回收箱是现代城市环保与资源循环利用领域的一项创新技术,它通过集成各种智能化功能,提高了垃圾回收的效率和准确性,促进了垃圾分类与减量。随着全球对环境保护意识的增强和智慧城市概念的推广,智能回收箱的发展前景非常广阔&a…...
Remix在SPA模式下,出现ErrorBoundary错误页加载Ant Design组件报错,不能加载样式的问题
Remix是一个既能做服务端渲染,又能做单页应用的框架,如果想做单页应用,又想学服务端渲染,使用Remix可以降低学习成本。最近,在学习Remix的过程中,遇到了在SPA模式下与Ant Design整合的问题。 我用Remix官网…...
ADB ROOT开启流程
开启adb root 选项后,执行如下代码: packages/apps/Settings/src/com/android/settings/development/AdbRootPreferenceController.java mADBRootService new ADBRootService(); Override public boolean onPreferenceChange(Preference preference…...
传输层协议 —— TCP协议(上篇)
目录 1.认识TCP 2.TCP协议段格式 3.可靠性保证的机制 确认应答机制 超时重传机制 连接管理机制 三次握手 四次挥手 1.认识TCP 在网络通信模型中,传输层有两个经典的协议,分别是UDP协议和TCP协议。其中TCP协议全称为传输控制协议(Tra…...
YOLOv8改进,YOLOv8的Neck替换成AFPN(CVPR 2023)
摘要 多尺度特征在物体检测任务中对编码具有尺度变化的物体非常重要。多尺度特征提取的常见策略是采用经典的自上而下和自下而上的特征金字塔网络。然而,这些方法存在特征信息丢失或退化的问题,影响了非相邻层次的融合效果。一种渐进式特征金字塔网络(AFPN),以支持非相邻…...
学习大数据DAY59 全量抽取和增量抽取实战
目录 需求流程: 需求分析与规范 作业 作业2 需求流程: 全量抽取 增量抽取 - DataX Kettle Sqoop ... 场景: 业务部门同事或者甲方的工作人员给我们的部门经理和你提出了新的需 求 流程: 联系 > 开会讨论 > 确认需求 > 落地 需求文档( 具体…...
YOLOv8——测量高速公路上汽车的速度
引言 在人工神经网络和计算机视觉领域,目标识别和跟踪是非常重要的技术,它们可以应用于无数的项目中,其中许多可能不是很明显,比如使用这些算法来测量距离或对象的速度。 测量汽车速度基本步骤如下: 视频采集&#x…...
在线相亲交友系统:寻找另一半的新方式
在这个快节奏的时代里,越来越多的单身男女发现,传统意义上的相亲方式已经难以满足他们的需求。与此同时,互联网技术的迅猛发展为人们提供了新的社交渠道——在线相亲交友系统作者h17711347205。本文将探讨在线相亲交友系统如何成为一种寻找另…...
MySQL 中存储过程参数的设置与使用
《MySQL 中存储过程参数的设置与使用》 在 MySQL 数据库中,存储过程是一组预先编译好的 SQL 语句集合,可以接受参数并返回结果。使用存储过程可以提高数据库的性能和可维护性,同时也可以减少网络流量和代码重复。那么,如何在 MyS…...
2k1000LA 调试HDMI
问题: 客户需要使用HDMI 接口,1080p 的分辨率。 ---------------------------------------------------------------------------------------------------------------- 这里需要看看 龙芯派的 demo 版 的 硬件上的连接。 硬件上: 官方的demo 板 , dvo1 应该是 HDMI的…...
24年蓝桥杯及攻防世界赛题-MISC-1
2 What-is-this AZADI TOWER 3 Avatar 题目 一个恐怖份子上传了这张照片到社交网络。里面藏了什么信息?隐藏内容即flag 解题 ┌──(holyeyes㉿kali2023)-[~/Misc/tool-misc/outguess] └─$ outguess -r 035bfaa85410429495786d8ea6ecd296.jpg flag1.txt Reading 035bf…...
前端项目代码开发规范及工具配置
在项目开发中,良好的代码编写规范是项目组成的重要元素。本文将详细介绍在项目开发中如何集成相应的代码规范插件及使用方法。 项目规范及工具 集成 EditorConfig集成 Prettier1. 安装 Prettier2. 创建 Prettier 配置文件3. 配置 .prettierrc4. 使用 Prettier 集成 …...
【HTML-16】深入理解HTML中的块元素与行内元素
HTML元素根据其显示特性可以分为两大类:块元素(Block-level Elements)和行内元素(Inline Elements)。理解这两者的区别对于构建良好的网页布局至关重要。本文将全面解析这两种元素的特性、区别以及实际应用场景。 1. 块元素(Block-level Elements) 1.1 基本特性 …...
LLM基础1_语言模型如何处理文本
基于GitHub项目:https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken:OpenAI开发的专业"分词器" torch:Facebook开发的强力计算引擎,相当于超级计算器 理解词嵌入:给词语画"…...
vulnyx Blogger writeup
信息收集 arp-scan nmap 获取userFlag 上web看看 一个默认的页面,gobuster扫一下目录 可以看到扫出的目录中得到了一个有价值的目录/wordpress,说明目标所使用的cms是wordpress,访问http://192.168.43.213/wordpress/然后查看源码能看到 这…...
GO协程(Goroutine)问题总结
在使用Go语言来编写代码时,遇到的一些问题总结一下 [参考文档]:https://www.topgoer.com/%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B/goroutine.html 1. main()函数默认的Goroutine 场景再现: 今天在看到这个教程的时候,在自己的电…...
逻辑回归暴力训练预测金融欺诈
简述 「使用逻辑回归暴力预测金融欺诈,并不断增加特征维度持续测试」的做法,体现了一种逐步建模与迭代验证的实验思路,在金融欺诈检测中非常有价值,本文作为一篇回顾性记录了早年间公司给某行做反欺诈预测用到的技术和思路。百度…...
[ACTF2020 新生赛]Include 1(php://filter伪协议)
题目 做法 启动靶机,点进去 点进去 查看URL,有 ?fileflag.php说明存在文件包含,原理是php://filter 协议 当它与包含函数结合时,php://filter流会被当作php文件执行。 用php://filter加编码,能让PHP把文件内容…...
Python 训练营打卡 Day 47
注意力热力图可视化 在day 46代码的基础上,对比不同卷积层热力图可视化的结果 import torch import torch.nn as nn import torch.optim as optim from torchvision import datasets, transforms from torch.utils.data import DataLoader import matplotlib.pypl…...
Leetcode33( 搜索旋转排序数组)
题目表述 整数数组 nums 按升序排列,数组中的值 互不相同 。 在传递给函数之前,nums 在预先未知的某个下标 k(0 < k < nums.length)上进行了 旋转,使数组变为 [nums[k], nums[k1], …, nums[n-1], nums[0], nu…...
面试高频问题
文章目录 🚀 消息队列核心技术揭秘:从入门到秒杀面试官1️⃣ Kafka为何能"吞云吐雾"?性能背后的秘密1.1 顺序写入与零拷贝:性能的双引擎1.2 分区并行:数据的"八车道高速公路"1.3 页缓存与批量处理…...
Python环境安装与虚拟环境配置详解
本文档旨在为Python开发者提供一站式的环境安装与虚拟环境配置指南,适用于Windows、macOS和Linux系统。无论你是初学者还是有经验的开发者,都能在此找到适合自己的环境搭建方法和常见问题的解决方案。 快速开始 一分钟快速安装与虚拟环境配置 # macOS/…...
