自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 收藏
  • 关注

原创 liunx查看日志

【代码】liunx查看日志。

2024-06-09 11:36:09 187

原创 mysql 深分页问题(limit)

时间要久是因为,在通过二级索引查找到满足条件的记录的id时,需要在进行一次回表来获取所需要返回的字段的信息,之后在执行limit命令截取响应的记录。limit 100000,10相较于 limit 0,10而言多回表了100000次。所以导致深分页变慢。偏移量越大,mysql就会扫描越多的行,然后在进行回表,然后在抛弃掉偏移量之前的行,之后在返回偏移量后边的行,这样就导致查询性能下降。想办法让标记的位置的列是有序的,并且不重复。然后就可以将偏移量转义到where语句中,来减少回表次数。

2024-02-26 15:50:11 542

原创 mysql索引失效

row_id排序:与全字段排序步骤类似,放入sort_buffer中的数据只包含要排序的字段,等排完续后,在进行回表获取需要返回字段的数据。当要排序的数据单行数据的长度(单行数据的长度为字段所设置的数据类型的大小相加)大于max_length_for_sort_data时,就需要使用row_id排序。辅助索引排序:当sort_buffer快要满的时候,会对sort_buffer中的数据先进行排序,将排好序的数据放入到一个临时的磁盘文件中。然后在重新向sort_buffer中添加数据,一次类推。

2024-02-26 13:57:09 588

原创 mysql 锁

意向锁是为了避免DML操作时行锁与表锁之间的冲突,在InnoDb中添加了意向锁,使得表锁不用检查每行数据是否加锁,使用意向锁来减少表锁的检查。排它锁(X):允许已获取排他锁的事务更新数据,阻止其他事务去获取相同数据集的排他锁和共享锁(不加锁的select语句还是可以执行的)行锁是每次操作锁住对应的数据,锁的力度较小,发生锁冲突的概率较低,并发度最高,在InnoDB引擎中,其数据是基于索引组织的,使用场景:数据库备份,对所有的表锁定,从而获取一致性视图,保证数据的完整性。表共享读锁与表独占写锁互斥。

2024-02-26 09:54:06 931

原创 数据结构-二叉树

平衡二叉树是通过旋转机制来保障平衡的,旋转的规则是:当任意一节点的高度差大于1时,进行旋转(即任意一个节点的左右子树的高度差大于1时进行旋转(通过过插入节点开始,不断的王父节点查找不平衡点))根节点的左子树:根节点的左子节点及其子节点下方的所有节点。根节点的右子树:根节点的右子节点及其子节点下方的所有节点。二叉查找树的规则为:小的存右边,大的村左边,一样的不存。前序:当前节点,左节点,右节点。中序:左节点,当前节点,右节点。左子节点:父节点左下方的节点。右子节点:父节点右下方的节点。根节点:最顶层的节点。

2023-11-29 22:40:52 634

原创 rabbitmq

注意:版本号中带有management的是带有管理端界面的,没有带的是访问不到15672端口的-e 声明环境变量-e RABBITMQ_DEFAULT_USER 设置rabbbitmq默认用户名-e RABBITMQ_DEFAULT_PASS 设置rabbbitmq默认用户密码-v 磁盘映射-v 服务器地址:/var/lib/rabbitmq 持久化 rabbitmq 数据,数据映射到服务器的地址--name 容器名称--hostname 其他容器访问当前容器时,可通过hostname进行访问。

2023-11-29 21:53:19 826

原创 mysql 数据类型中的显示宽度int(display width)

3代表select时当前字段显示的宽度,如果使用zerofill的话,当字段长度小于 显示长度时,左侧会通过0补齐,如果字段长度大于显示长度时,则原样输出。只有数据类型时数据长度表示的是显示长度,当为char类型时,表示的是当前字段可存储的字节数,为varchar时,表示的是可存储的空间的最大值,字符型时,只有char类型为定长字段,text,blob,varchar均为变长。text 不区分大小写,blob区分大小写。

2023-09-29 17:08:01 299

原创 redis-sentinel搭建问题

查看主从服务器中是否 开启保护模式,如果开启了需要设置bind(绑定本机的ip,当前机器可能有 多个网卡,但是只允许,通过bind 设置的网卡才可以访问redis),查看bind设置是否正确,或者关闭保护模式。在生产环境中,为了安全,不要关闭 protected-mode,并设置 requirepass 参数配置密码和 bind 绑定机器的网卡 IP。protected-mode:保护模式,默认开启,如果没有设置密码或者 bind IP,我只接受本机访问(没密码+保护模式启动=本地访问)。

2023-09-27 07:38:02 97

原创 git分支命令

git分支命令前言一、创建分支二、切换分支三、合并分支三、删除分支四、重命名分支总结前言本文包含创建分支,切换分支,删除分支,合并分支一、创建分支git branch 分支名git push origin 分支名 # 将分支同步到远程服务器二、切换分支git checkout 分支名创建并切换分支git checkout -b 分支名三、合并分支git merge 分支名三、删除分支git branch -d 分支名git branch -D 分支名 # 强制删除g

2022-01-13 17:54:40 223

原创 mysql操作

mysql操作1. insert语句2. 更新3. 删除1. insert语句insert [ignore] into 表名 [(字段1,字段2,...)] values(值1,值2,.....) [,values(值1,值2,.....)]ignore让insert语句直插入数据库不存在的记录,或略异常insert语句中可以使用子查询插入数据insert into 表名1 (字段1,字段2,.....) select 字段1,字段2,... from 表2ps:只要select中获

2021-12-03 10:26:14 750

原创 msqyl数据库函数

mysql函数1. 日期函数2. 字符串函数3. 数字函数4. 条件判断1. 日期函数函数功能格式用例now()获取当前日期和事件yyyy-MM-dd hh:mm:ss2021-12-02 13:56:45curDate()获取当前日期yyyy-MM-dd2021-12-02curTime()获取当前事件hh:mm:ss13:56:45date_formate(日期,日期格式)格式化日期date_formate(“2019-09-09”,

2021-12-02 18:17:55 1064

原创 mysql 事务

目录前言1. 事务的ACID属性1.1 原子性1.2 一致性1.3 隔离性前言事务的执行原理,当对数据进行操作时,会将数据拷贝到undo日志中,操作记录会被写到redo日志中,如果执行一半出现异常或者rollback会将undo日志中的文件恢复到数据库文件中1. 事务的ACID属性原子性,一致性,隔离行,持久性1.1 原子性 事务中的所有操作要么全部完成,要么全部失败。事务执行后,不允许停留在中间的某个状态1.2 一致性不管在任意规定的时间,并发事务有多少,都需要保持运行结果的一直性

2021-12-02 17:28:14 323

原创 sql语言四个部分

一、数据定义语言DDL(data definition language)二、数据操作语言DML(data Manipulation language)三、数据查询语言DQL(data definition language)四、数据控制语言DCL(data Control language)一、数据定义语言DDL(data definition language)示例:用于定义数据库,数据表的语句,例如:创建库,删除库,创建表,修改表,删除表(create,alter,drop)二、数据操.

2021-11-30 15:33:23 798

原创 mysql 表操作

提示:mysql表操作一、创建表二、编辑表(alter)1.添加字段2.修改字段(除字段名)3.修改字段(并修改字段名)4.给表重命名三、表约束1. unsigned 无符号类型2. zerofill 自动用0补齐3. auto_increment自增14.null 和 not null5.default设置默认值一、创建表create table [if not exists] 表名( 字段名 字段类型 [字段约束] [comment '注释'] [索引类型], [primary key

2021-11-30 15:23:13 700

原创 mysql 索引

MYSQL索引创建索引删除索引创建索引创建表时,创建索引create table if not exists user( id int(11) unsigned not null auto_increment, username char(20) not null, usernickname varchar(200) not null, birth_date date not null, primary key (id), index username_index(username)

2021-11-30 14:38:58 123

原创 MySQL修改密码及mysql8加密方式

文章目录使用set方法修改直接修改表使用mysqladmin方法忘记密码时,修改密码mysql8修改密码密码修改成功后,需要使用flush privileges;进行权限刷新使用set方法修改set password for 用户名@授权地址 = password(新密码);直接修改表use mysql;update user set password = password(新密码);使用mysqladmin方法mysqladmin -u 用户名 -p 旧密码 password "新密码

2021-11-26 17:37:23 3206

原创 mysql 用户创建与授权

用户创建create user 用户名@授权地址 identified by 密码create user ttt@'%' identified by '123456';用户删除drop user 用户名@授权地址drop user ttt@'%';用户授权grant 权限(多个权限用英文,分隔) on 库名.表名 to 用户名@授权地址 [identified by 用户密码 ]grant select,update on books.* to ttt@localhost i.

2021-11-26 17:19:05 204

转载 synchronized锁

1、 无论synchronized关键字加在方法上还是对象上,如果它作用的对象是非静态的,则它取得的锁是对象;如果synchronized作用的对象是一个静态方法或一个类,则它取得的锁是对类,该类所有的对象同一把锁。2、每个对象只有一个锁(lock)与之相关联,谁拿到这个锁谁就可以运行它所控制的那段代码。3、实现同步是要很大的系统开销作为代价的,甚至可能造成死锁,所以尽量避免无谓的同步控制...

2021-11-19 15:49:08 80

原创 java泛型 及<? extend T> <? super T>

<? extend T> 上界通配符,所描述的元素类型为T或其派生类。 <? extend T> t 只能从t中取元素,而无法为T插入元素。 因t的类型只能为一种 ,所以<? extend T>只能代表一种数据类型要么是T,要么是T的派生类。当向t中插入元素时,编译器不能确定插入的数据的类型和t的数据类型一致,所以禁止插入。当取数据时,t中的数据都可以向上转型为T或者它的基类,避免了一定的类型转换 <? super T> 下节通配..

2021-11-17 15:16:02 321

原创 Propagation.REQUIRES_NEW在当前类中直接掉用所修饰的方法时,失效

直接调用REQUIRES_NEW会失效,需要通过类进行引用

2021-07-07 14:42:59 306

原创 java中mysql插入时间

sql中字段类型为datejava.util.Date dateUntil = new java.util.Date() new java.sql.Date(dateUntil.getTime()) // 要插入的数据sql中字段类型为datetimejava.util.Date dateUntil = new java.util.Date() new java.sql.Timestamp(dateUntil.getTime()) // 要插入的数据sql中字段类型为timejava.util..

2021-07-07 11:56:25 103

原创 函数处理 函数(回调函数)

call_user_func (callback $callback, mixed $parameter = ? , mixed $… = ? ) 把第一个参数当成回调函数进行调用,回到函数中的参数,可以放入第一个参数后边call_user_func_array ( callable $callback , array $param_arr ) 第一个参数为回调函数,回到函数使用数组的形式放入第二个参数上注:回调函数,使用数组进行传递[new 函数,函数名]使用命名空间/ As of P.

2021-06-10 15:59:45 166

原创 mybatis动态sql

where + if <!--where+if 使用where标签可以无参时,不会出现where 有参数时,会剔除多余的and--> <select id="select" resultMap="selectMap" parameterType="Dept"> select * from dept <where> <if test="deptno != null"

2021-05-13 13:48:55 74

原创 网络端口及进程号查询

netstat 用于查看网络端口号netstat -tulpnnetstat -anops 用户查看计算机进程ps -ef | grep 进程名 可以模糊匹配到某写进程

2021-01-14 11:38:51 140

原创 grep

通过文件内容查找文件:grep -r “字符串表达式” 要查找的目录例子:grep -r “hello” ./*

2021-01-11 16:03:32 58

原创 tar解压缩

tar解压缩tar zcvf 压缩到的压缩文件路径 压缩文件tar zcvf test.tar /test/*tar zxvf 要解压的压缩文件路径 -C 要解压到的文件地址tar zxvf test.tar -C ./test

2021-01-11 15:49:14 80

原创 git忽略本地更新

git fetch --allgit reset --hard origin/master

2020-04-08 18:08:26 288

原创 liunx下nginx日志切割

#!/bin/bash#此脚本用于自动分割Nginx的日志,包括access.log和error.log#每天00:00执行此脚本 将前一天的access.log重命名为access-xxxx-xx-xx.log格式,并重新打开日志文件#Nginx日志文件所在目录LOG_PATH=/usr/local/nginx/logs#获取昨天的日期YESTERDAY=$(date -d "yes...

2019-08-07 17:15:52 91

原创 mysql数据导入导出

@数据库导入导出导出使用mysqldummysqldump -u用户名 -p数据库密码 数据库名> 导出文件地址ps:mysqldump -uroot -pmysql test_db> /test_db.sqlmysql导入.sql文件选择数据库source 数据库文件地址;ps:source /test_db.sql;...

2019-08-07 17:00:08 101

原创 学习笔记(01):wordpress插件开发 wordpress模板开发 wp开发教程-wordpress插件开发1-插件 模板开发联系和区别...

会员免费看,http://edu.csdn.net/lecturer/842右侧可办理会员卡。wordpress插件 模板开发开发是子恒老师《实用技能》视频教程的第4部。详细讲解了wordpress开发过程,内容包含wp插件,模板开发之间的区别和联系,插件开发流程,使用wordpress ui jQuery, 保存和获取数据等等。欢迎反馈,微信号:QQ68183131...

2019-07-12 16:48:38 401

原创 wordpress小工具

wordpress小工具创建一个类文件创建一个类文件用banner小工具为例:(1) 创建一个bnner.php类文件 继承WP_Widget类,改类文件中包含三个函数:1.定义小工具函数(函数名与类名同名)2.小工具前端显示函数(函数名widget)3.后台小工具编辑函数(函数名form)(2)添加钩子 add_action( 'widgets_init', 'd_search...

2019-07-04 17:55:56 428

转载 rsync+inotify文件实时同步

rsync+inotify文件实时同步(1)服务端环境搭建(需要同步的服务器)  1.安装:  wget https://download.samba.org/pub/rsync/src/rsync-3.0.6.tar.gz  tar -zxvf rsync-3.0.6.tar.gz  ./configure --prefix=/usr/local/rsync  make  make...

2019-05-17 14:53:17 107

原创 支付宝wap异步回调失败问题

支付宝返回数据中对fund_bill_list字段进行了转义,导致签名验证失败,在进行验签之前需要对改字段进行反转一下(htmlspecialchars_decode)

2019-04-30 11:45:04 415

转载 tp5漏洞

1.更改thinkphp/library/think/app.php    找到module函数在获取控制器名的代码下边添加一下代码 if (!preg_match('/^[A-Za-z](\w|\.)*$/', $controller)) { throw new HttpException(404, 'controller not ex...

2019-04-22 18:05:11 2773

原创 scp无密码及秘钥创建

当A机器使用scp向B机器同步文件时,可以通过创建秘钥对的形式来建立信任关系。ssh-keygen -t rsa 注意: 1.所有要输入的地方均可直接回车跳过 QUOTE: Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa)::#回车 ...

2019-03-29 18:51:02 694

转载 php 上传文件到其他服务器

php依赖于ssh2扩展可以实现,上传,更改,删除其他服务器文件安装ssh2依赖 libssh - wget https://www.libssh2.org/download/libssh2-1.8.0.tar.gz - tar -xvf libssh2-1.8.0.tar.gz - cd libssh2-1.8.0 - ./configure --prefix=/u...

2019-03-29 18:35:41 626

原创 原生php调试

不修改配置文件error_reporting(E_ALL); //设置错误等级 多个等级需要使用|隔开。值为0时关闭错误报告ini_set(‘display_errors’, 1); //是否提示错误原因ini_set(‘error_log’,‘日志地址’)//关闭错误提示的时候,将错误信息放入到日志中。...

2019-03-27 14:46:55 284

原创 nginx配置

1.nginx配置server{ listen 80; //监听端口号 server_name 域名 localhost 外网ip; //多个域名和ip之间可以用空格隔开 set $root 项目地址;//设置root变量 location ~ .*\.(mp4)$ { client_body_buffer_size 204...

2019-03-25 11:13:06 119

原创 添加设置ftp用户权限

1.安装vsftp(对ssh登录用户无效)yum -y install vsftpd //通过yum来安装vsftpdchkconfig vsftpd on //设置为开机启动vi /etc/vsftpd/vsftpd.conf #设置配置文件2.设置vsftpd.confchroot_local_user=YES //所有用户锁定在自己的主目录中#chroot_list_ena...

2019-03-19 18:37:43 1598

原创 分割nginx日志(logrotate)

使用nginx自带的logrotate来分割nginx日志。1.建立定时任务。每天凌晨执行。  #手工对nginx日志进行切割转换 /usr/sbin/logrotate -vf /etc/logrotate.d/nginx #只保留最近7天的压缩转储日志文件 find //usr/local/nginx/logs/* -name “*.log” -mtime 7 -type f -ex...

2019-01-07 11:00:38 304

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除