自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

离阳的博客

选择一条自己要走的路,从此不再言岁月,也不再言放弃

  • 博客(47)
  • 收藏
  • 关注

原创 mysql主从复制

MySQL之间数据复制的基础是二进制日志文件(binary log file)。一台MySQL数据库一旦启用二进制日志后,其作为master,它的数据库中所有操作都会以“事件”的方式记录在二进制日志中,其他数据库作为slave通过一个I/O线程与主服务器保持通信,并监控master的二进制日志文件的变化,如果发现master二进制日志文件发生变化,则会把变化复制到自己的中继日志中,然后slave的一个SQL线程会把相关的“事件”执行到自己的数据库中,以此实现从数据库和主数据库的一致性,也就实现了主从复...

2021-07-12 18:59:21 165 1

原创 mysql优化之问题查找-慢查询日志,explain

慢查询日志set global slow_query_log='ON' ;开启慢查询,重启失效my.cnf 永久生效show VARIABLES LIKE '%query%';slow_query_log 慢查询是否开启long_query_time 慢查询时间阈值slow_query_log_file 慢查询日志的位置记录的信息:查询慢的sql,sql的执行时间,锁表时间,扫描过的行数慢查询分析工具 mysqldumpslowmysqldumpslow –s c...

2021-07-09 11:28:54 186

原创 mysql索引总结

什么是索引:MySQL官方对索引的定义为:索引是帮助MySQL高效获取数据的数据结构。索引相当于字典里的字母表,如果要查某个字,如果不使用字母表,则需要从几百页中逐页去查索引原理:本质:通过不断地缩小想要获取数据的范围来筛选出最终想要的结果,把随机的事件变成顺序的事件。1.索引字段要尽量的小:通过上面的分析,我们知道IO次数取决于b+数的高度h,假设当前数据表的数据为N,每个磁盘块的数据项的数量是m,则有h=㏒(m+1)N,当数据量N一定的情况下,m越大,h越小;而m = 磁盘块的大小

2021-07-04 16:42:59 117

原创 mysql索引

MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。一般工作中用到最多的是BTree索引。mysql索引目的:索引的目的在于提高查询效率,可以类比字典,如果要查“mysql”这个单词,我们肯定需要定位到m字母,然后从下往下找到y字母,再找到剩下的sql。如果没有索引,那么你可能需要把所有单词看一遍才能找到你想要的,如果我想找到m开头的单词呢?或者ze开头的单词呢?是不是觉得如果没有索引

2021-07-02 15:16:18 80

原创 Linux整理 (网络命令)

ifconfig 查看和设置网卡信息ifconfig 网卡名称 ip地址lastlog 检查某特定用户上次登录时间lastloglastlog -u amenetstat 显示网络相关信息netstat 【选项】 -l 监听 -r 路由 -n 显示ip地址和端口netstat -tlun 查看本机监听的端口netstat -an 查看本机所有的网络连...

2021-06-07 15:16:19 40

原创 Linux整理 (用户管理命令)

useradd 添加新用户执行权限:root语法: useradd 新用户名passwd 设置用户密码执行权限:所有用户语法: passwd 用户名who 查看登录用户信息执行权限:所有用户语法: whow 查看登录用户详细信息执行权限:所有用户语法: w...

2021-06-07 15:15:54 69

原创 api 接口签名 验签

开发过程中,我们经常会与接口打交道,有的时候是调取别人网站的接口,有的时候是为他人提供自己网站的接口,但是在这调取的过程中都离不开签名验证。我们在设计签名验证的时候,请注意要满足以下几点:时效性:每次请求的时效,过期作废等。 唯一性:每次的签名是唯一的。 完整性:能够对传入数据进行验证,防止篡改。生成签名时需要设置一个密钥(secret),只有发送方,和接收方知道。请求方:将请求参数,签名sign除外,进行升序排列。然后转为字符串,按照双方约定的加密方式进行加密 ksort($d

2021-06-07 15:15:29 584

原创 Linux整理05(文件搜索命令)

find 文件搜索执行权限:所有用户语法:find 【搜索范围】【匹配条件】find /home -name init在目录home里查找文件init-iname 不区分大小写find /home -size +204800在目录home里查找大于100M的文件+n 大于 -n 小于 n 等于find /home -user 用户名在目录home里查找所有者为 xxx的文件-group 根据所属组...

2021-06-07 15:14:55 116 1

原创 Linux整理(压缩命令)

压缩文件gzip只能压缩文件,不能压缩目录压缩不保留原文件语法:gzip 【文件名】压缩后文件:.gzgunzip 解压gz压缩包语法:gunzip 【压缩文件】示例:gunzip code.gztar 打包目录,压缩tar 选项【-cfz】【压缩后文件名】 【目录】 -c 打包 -v 显示详细信息 -f 指定文件名 -z 打包同时压缩压缩后文件格式: .tar....

2021-05-25 13:45:22 263

原创 2021-05-17

chmod 改变文件或者目录权限命令所在路径: /bin/chmod/执行权限:所有用户语法:chmod -R 655【文件名】 -R 递归修改 rwx 421代表字符 权限 r 读 w 写 x 执行 对文件的含义 对目录的含义 可以查看文件内容 可以查看目录中的内容 可以修改文件 可以在目录中创建删除文件 可以执行...

2021-05-17 19:41:49 67

原创 Linux整理03(文件处理命令)

命令格式格式 : 命令 【-选项】【参数】例如 :ls -la /etc目录处理命令:ls命令所在路径:/bin/ls/权限:所有用户功能:显示目录文件语法:ls 【-ald]】 【文件或目录】 -a 显示所有文件,包括隐藏文件 -l 详细信息显示 -d 查看目录属性 -h 人性化显示 ...

2021-05-13 13:39:31 58

原创 Linux整理02(服务器注意事项)

远程服务器不允许关机,只能重启 重启时应关闭服务 不要在服务器访问高峰时运行高负载命令 远程配置防火墙时不要把自己提出服务器 指定合理的密码规范并定期更新 合理分配权限 定期备份重要数据和日志...

2021-05-06 18:16:49 35

原创 Linux整理01 (常用目录)

目录名 目录作用 /bin/ 存放系统命令的目录,普通用户和超级用户都可以执行。放在/bin下的命令在单用户模式下也可以执行 /sbin/ 保存和系统环境设置相关的命令,只有超级用户可以使用这些命令进行系统环境设置,但是有些命令可以允许普通用户查看 /usr/bin/ 存放系统命令的目录,普通用户和超级用户都可以执行,这些命令和系统启动无关,在单用户模式下不能执行 /usr/sbin/ 存放根文件系统不必要的系统管理命令,例如多数服务程序。只有超级用户可以使用。

2021-05-06 18:12:35 75

原创 RabbitMQ 消息队列

RabbitMQ简介RabbitMQ 是一个由 Erlang 语言开发的 AMQP 的开源实现。AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然。AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。RabbitMQ是一个开源的AMQP实现,服务器端用Erlang语言编写,支持多种客户端,如

2021-04-19 10:47:10 248 1

原创 laravel验证码扩展gregwar/captcha

在laravel中通过第三方扩展包mews/captcha作为基础来实现 Laravel 中的验证码功能两种安装方法:第一种:在项目根目录下执行composer require gregwar/captcha第二种:或者在composer.json 的 requier 中添加"gregwar/captcha": "1.*"然后执行composer update即可 "require": { ...省略..., ...省略..., ...

2021-04-13 16:16:15 331

原创 MySQL报Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggre的问题

mysql5.7在使用group by子句时,会遇到如下问题:Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggre聚合查询出现这样的报错是因为mysql设定的mode含有 ONLY_FULL_GROUP_BYMySQL 5.7.5及以上功能依赖检测功能。如果启用了ONLY_FULL_GROUP_BY SQL模式(默认情况下),MySQL将拒绝选择列表,HAVING条件或ORDER BY列表的查询引

2021-03-25 10:18:53 256

原创 PHP中empty和if判断

empty()函数用于检查一个变量是否为空。empty() 判断一个变量是否被认为是空的。当一个变量并不存在,或者它的值等同于 FALSE,那么它会被认为不存在。如果变量不存在的话,empty()并不会产生警告。if 语句用来判断所包含值的布尔值,即true和false两值,通过判断变量的布尔值来决定if 语句的操作。要明确地将一个值转换成boolean,用(bool)或者(...

2019-07-04 15:02:26 2497

原创 为什么mysql数据库字段要定义为NOT NULL

在mysql数据库中“NULL”和“空值”是不一样的。NULL是一种比较特殊的数据类型,这也可以解释为什么字段设置为NOT NULL,却仍然可以插入空值。设置了NOT NULL之后便不能插入NULL值了,但仍然可以插入像 ' ' 这样的空值。另外空值是不占用空间的,而NULL需要占用空间。在平常我们设计数据表时,如果是索引字段,一定要定义为NOT NULL。因为NULL值会影响cordinat...

2019-06-27 16:26:06 8539

原创 PHP中数组常用函数

一、数组操作的基本函数数组的键名和值:array_values($arr) 返回数组中所有的值(不保留键名);被返回的数组将使用数值键,从 0 开始且以 1 递增array_keys(array,value,strict) 返回包含数组中所有键名的一个新数组array_flip($arr) 数组中的值与键名互换(如果有重复前面的会被后面的覆盖)in_array("str...

2019-05-06 13:12:38 160

原创 利用js中的scrollTop() 方法解决页面返回上次浏览位置问题

最近在工作中遇到了一个问题,从商品列表页面进入到详情页后再返回,页面又回到了最顶部,而不是上次浏览的位置。这样的用户体验肯定是很差的。就查了一下资料,发现利用js中的scrollTop() 方法方法可以解决这个问题。让我们先来看下文档中有关scrollTop()方法的介绍:所以我们在滚动页面时保存滚动位置,onload时取出并滚动到上次保存位置。具体可以通过两种方法实现:1.loc...

2019-03-26 14:17:20 3499

原创 PHP中mktime函数获取时间段开始和结束段时间戳

php 获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法,主要使用到了 php 的时间函数 mktime()。mktime函数用法如下:mktime(hour,minute,second,month,day,year,is_dst)参数描述hour 可选。规定小时。minute 可选。规定分钟。second 可选。规定秒。month 可选。规定用数字表示的月。...

2019-03-13 13:33:31 472

原创 html中的超链接(a标签)加onclick点击事件

今天在看到前端页面的代码时突发奇想,html中的a标签能加点击事件么。于是就动手测试了一下。<a onclick="alert('1')">超链接1</a><br><a href="#" onclick="alert('2')">超链接2</a><a href="javascr

2019-03-07 17:18:57 72625

原创 MySQL优化

开发过程中,我们经常跟数据库打交道。所以MySQL优化也是我们应该知道的,并且在日常开发中要注意的。关于MySQL优化可以分为三个方面,优化sql查询语句,优化数据库结构,优化MySQL服务器。优化查询1.我们可以使用索引查询,对一些关键字段建立索引。2.使用连接查询代替子查询。因为执行子查询时,MYSQL需要创建临时表,查询完毕后再删除这些临时表,子查询的速度会受到一定的影响。joi...

2019-02-21 21:13:28 122

原创 PHP中处理数组,字符串的常用函数以及对应的返回值

函数对编程语言的重要性不言而喻。平时我们可能没办法记住一门编程语言的全部函数,但至少要有印象。在工作中碰到相关需求的时候可以想到,这样就可以大大增加我们的开发速度。这里总结一下PHP中处理数组,字符串的常用函数及对应的返回值。处理数组:(1)array() 创建数组(2)in_array()  判断元素是否在数组中(3)count() 返回数组中元素的数目(4)array_me...

2018-12-15 19:54:49 963

原创 代码规范工具之PHP CS Fixer

正如一千个人眼中有一千个哈姆雷特,每个程序员的代码风格也会有很大的不同。虽说有标准的代码开发规范指南,可毕竟不是每个人都能严格按照规范去写代码,另外手动去调整代码规范也是很麻烦的一件事。所以我们可以借助工具去规范我们的代码。或许有的人会说利用工具容易养成坏的习惯了,应该靠自己养成规范的习惯了,我并不反对。我也认为养成规范代码的习惯很重要,我说的使用工具并不是让我们平时不去考虑代码开发规范随意去写,...

2018-12-08 16:33:30 1006

原创 瞎姬霸写之为什么我的生活越来越没意思

不知道从什么时候起,在网上看电影看电视开始不停的快进,每次都是忍不住想快进,想赶快看到结局。一边看电影,一边刷手机,好像要同时做几件事才行,不然时间就浪费了。也不知道从什么时候起,曾经以为会玩一辈子的LOL也不再玩了。即使现在重新装上,也完全找不到以前玩游戏时的感觉。以前玩LOL感觉就像进入了一个新的世界,一切都是那么神奇。现在却感觉只是一个游戏,可有可无。每天就是起床挤地铁上班,下班挤地铁回家吃...

2018-11-17 12:10:38 679

原创 关于tp框架操作数据表的返回值

由于在工作中很多对数据表的操作都是通过框架里方法去完成的,所以知道使用这些方法时的返回参数也是很重要的。这里就总结一下。1.首先是create操作add 方法,若发生错误,返回false;否则返回创建的id值;2.update操作save、setField、setInc、setDec  返回值是影响的记录数(有可能为0),更新出错返回false,因此一定要用恒等来判断是否更新失败...

2018-11-16 09:52:35 912

原创 ThinkPHP的系统流程

由于在项目中使用的是tp框架,可是发现虽然一直在用,但其实并没有深入了解,也不是很清楚具体的流程。于是在手册上查阅了一下,仅供参考。ThinkPHP框架开发的应用的标准执行流程如下:用户URL请求  调用应用入口文件(通常是网站的index.php) 载入框架入口文件(ThinkPHP.php) 记录初始运行时间和内存开销 系统常量判断及定义 载入框架引导类(Think\Thin...

2018-11-15 17:31:27 189

原创 js中获取当前语言类型

有时候我们要根据当前的语言类型进行判断,如果在前端页面想要获取到当前的语言类型,我们可以通过js封装一个文件来实现。(function(global, $) { /** * 定义一个对象 * 所有全局函数和变量都要放在这个对象中。 */ var obj = function() { // --------------------...

2018-11-14 17:56:39 5492

原创 Linux常用命令总结

不会Linux的程序员不是好程序员。这里总计一些常用到的Linux命令方便查阅。常用指令ls          显示文件或目录     -l           列出文件详细信息l(list)     -a         列出当前目录下所有文件及目录,包括隐藏的a(all)     mkdir         创建目录     -p           创建目录,若无父...

2018-11-11 22:10:29 91

原创 js中的this指向

做为一个后端开发人员,前端虽然没有那么专业,但js肯定是不能不会的。而js中的this关键字又很有意思。其实我们没法确定的说this就一定指向谁。在不同的情况下会有不同的指向。1.首先在全局作用域或者普通函数中this指向全局对象window。//直接打印console.log(this); //window//function声明函数function test(){ ...

2018-11-11 22:00:14 109

转载 在网上看到一首小诗,感觉很有道理

《一切都准时》倾你之心,尽你之力,你想要的自会准时而来,给你之喜!最近很火的一首小诗: 纽约时间比加州时间早三个小时,New York is 3 hours ahead of California,但加州时间并没有变慢。but it does not make California slow.有人22岁就毕业了,Someone graduated at th...

2018-11-04 22:29:32 211

原创 PHP中常用的字符串截取函数

1.substr(源字符串,起始位置[,长度])-截取字符串返回部分字符串<?php $str ="phpddt.com"; echo substr($str,2);//pddt.com echo substr($str,2,3);//pdd echo substr($str,-2);//om 负数从结尾开始取?>但是当你截取中文字符串的时候...

2018-10-31 21:48:18 2283

原创 打印机打印中文,截取字符时出现乱码问题

       最近在工作中遇到了飞鹅打印机打印出来中文变成  ‘???’的乱码问题。我们的后端使用的PHP,把拼接好的字符串转换成json格式,然后请求飞鹅云打印机的接口。由于打印排版问题,有的字符串截取开放到第二行显示。结果在测试的时候却发现了打印出来的小票存在乱码问题。排查了一下,代码在字符串在第二十一个字符处截取开,飞鹅打印机默认一个汉字占三个字符,这样截取是不会霸汉字断开的。但字符串中如果...

2018-10-28 22:40:13 3747

原创 js中格式化金额与还原

项目中经常遇到金额较大的数据,有时需要格式化,即用逗号每三位隔开。因为是前端页面需要用到格式化金额,所以我就封装了一个js函数用来处理这类问题。当然了,方法有很多,这只是我自己封装的,拿来总结一下。话不多说上代码/*格式化金额; *@method formaNum *@param {int} num 需要被格式化的数额 {int} s 需要保留的小数位数 ...

2018-10-08 21:56:28 1941

原创 数据库设计规范

数据库的重要性不言而喻。对程序员来说跟数据库打交道更是家常便饭。数据库给开发带来了巨大的便利。我们或多或少的知道一些数据库设计规范,但并不全面。今天我就简单整理一下,帮自己做个总结梳理,也希望可以帮到小伙伴们。数据库设计规范包括命名规范、库表基础规范、字段规范、索引规范和SQL设计规范。1. 命名规范1.1 库名、表名、字段名禁止使用MySQL保留字。1.2 库名、表名、字段名使...

2018-09-02 22:18:16 6512

原创 Web API 的设计风格

一直在做APP后台,顺便总结下API应该怎样去写。API的设计风格一般是遵循RESTFul设计风格的。GET 请求遵循下面的格式。 请求     1. 头信息   Accept: application/json Content-Type: application/json;charset=utf-8 Accept-Language: <语言代码>...

2018-08-26 22:57:14 995

原创 PHP中利用mysql的锁机制,实现记录访问人数,解决并发问题

上来先上代码$db=mysqli_content('127.0.0.1','root','123456','test');mysqli_query($db,'set names utf8');$preson=1;mysqli_query($db,"lock tables lock_num write");$sql="select num from lock_num where id=1";...

2018-05-22 11:48:19 581

原创 瞎姬霸写之畅想互联网

秦朝末年,虞姬写字非常漂亮,这个大家都有所了解。但她善于闭眼为霸王项羽题字,却是鲜有人知。也就是后人传诵她的特有写法,叫瞎姬霸写。不知不觉中互联网已成为我们生活中不可或缺的一部分。仔细想一想,不由感叹互联网的发展真的是飞快,对我们生活的影响也是巨大的。还记得我小时候...

2018-05-17 20:11:04 1474 1

原创 mysql中的myisam与innodb存储引擎

提到mysql就需要了解一下它的存储引擎。所谓的存储引擎就是存储数据到硬件或者内存中的一种技术。mysql中的存储引擎常用的主要有myisam和innodb。myisam的索引结构采用的是非聚簇结构。其中主键索引有二个文件,一个是索引文件,一个是数据文件。通过索引查找数据的时候,是通过找到索引下面挂载的数据编号,通过这个编号找到我们的数据区,取出数据。而普通索引与主键索引在硬盘上面的存储方式都是一...

2018-04-21 23:18:19 170

空空如也

空空如也

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

TA关注的人

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