自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 浅谈MySQL中IN与索引

关于MySQL中IN到底走不走索引这个问题,很多人都比较疑惑,一开始可能很肯定的说走索引,然后会在某些时候发现索引失效或者并没有走索引。那么IN到底走没走索引呢?首先查询MySQL索引问题可以使用EXPLAINEXPLAIN:explain 命令获取 select 语句的执行计划,通过 explain我们可以知道以下信息:表的读取顺序,数据读取操作的类型,哪些索引可以使用,哪些索引实际使用了,表之间的引用,每张表有多少行被优化器查询等信息其中explian结果中的type字段很明显提现是否用到索

2022-04-18 23:45:00 7687

原创 MySQL下1045错误解决方法(ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor:yes))

登录数据库时,发现数据库连接不上,报错如下:ERROR1045(28000):Accessdeniedforuser'root'@'localhost'(usingpasswor:yes)为了以后方便排查,这里记录一下。首先,停止MySQL服务service mysqld stop既然是密码错误,那么就先跳过密码验证的步骤#vim /etc/my.cnf然后,搜索mysqld,找到[mysqld](port=3306上面那个):/mysqld(在vi...

2020-09-17 20:40:04 23536 10

原创 Nginx反向代理实现负载均衡

实现一个本地例子1.准备几个网站main.test配置801、配置8023.实现效果:访问main.test时,跳转到并输出内容4.添加网站输出内容,如main.test输出main.test,输出branch1.test,输出branch2.test5.配置文件,在vhost(没有则在nginx.conf的http里面)添加代理配置6.然后server里面添加引用7.反复访问,轮流输出的内容则成功。下面是完整代码和几种模式。

2023-06-20 22:45:00 508

原创 Think PHP6+Swagger3

swagger是一个解决接口规范化、标准化、文档化的一个组件,既可以直接自动生成resutful接口文档又能进行功能测试的一个web服务。本文是think PHP6结合swagger3的一个记录过程。

2023-06-08 23:00:00 1164

原创 hyperf 通过@Controller注解定义路由,@GetMapping

@Controller 注解多种快速便捷的 Mapping 注解,如 @GetMapping、@PostMapping、@PutMapping、@PatchMapping、@DeleteMapping 5 种便捷的注解用于表明允许不同的请求方法

2023-04-11 23:30:00 319 1

原创 MySQL 5.7 新特性JSON数据类型创建,查找,修改和索引简记

在MySQL中,JSON数据类型在5.7.8的时候正式引进,再此之前保存json格式一般使用varchar或者text。JSON数据类型特点:JSON主要将字段的type设JSON,不能具有非NULL得默认值。 MySQL提供操作JSON数据的内置函数 优化存储格式。存储在JSON列中的JSON文档将转换为内部各式,从而可以快速读取文档元素。 修改特定的键值,VARCHAR类型的JSON字符串要修改需要整条数据更新,而JSON数据类型可以只修改需要修改的键值创建JSON值数组包含用逗

2021-03-18 17:16:01 1153

原创 电商平台商品订单拆分模式分析

当我们将购物车进行结算的时候,通常会发现订单并不一定是一个,有可能是多个。同时优惠信息也刚好分摊到每个订单上面。订单拆分场景1.商家拆分电商平台(天猫、淘宝、拼多多等)有很多商家入驻,用户下单普遍存在跨店结算,所以要拆分订单内的信息,同时将商品信息与优惠信息分摊到各自店铺的订单上。2.仓库拆分电商平台存在多仓库的情况,且不同的商品放在不同的仓库(京东、考拉),商品会根据出货量在各个仓库进行备货。用户下单的订单内的商品如果存放在不同的仓库当中,需要针对不同的仓库商品进行拆分。每个子订单对应

2021-01-08 10:16:05 2956

原创 PHP 递归快速排序

快速排序是对冒泡排序的一种改进快速排序的基本思路是:设置一个基准元素,通过排序将需要排序的数据分割成两个部分,其中一部分的所有数据比基准元素小,另一部分的所有数据比基准元素大,然后对这两部分数据分别进行递归快速排序,最后将得到的数据和基准元素进行合并,就得到了所需数据。代码<?php$arr = [8,1,10,9,5,7];function quickSort($arr){ $lenth = count($arr);//获取数组个数 if($lenth &l.

2020-12-03 17:42:51 209

原创 PHP 循环二分查找和递归二分查找

二分查找二分查找算法(英语:binary search algorithm),也称折半搜索算法(英语:half-interval search algorithm)、对数搜索算法(英语:logarithmic search algorithm),是一种在有序数组中查找某一特定元素的搜索算法。搜索过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜索过程结束;如果某一特定元素大于或者小于中间元素,则在数组大于或小于中间元素的那一半中查找,而且跟开始一样从中间元素开始比较。如果在某一步骤数组为空,

2020-11-09 15:40:56 212

原创 PHP 贪心算法 小孩分饼干问题

贪心算法贪心算法(英语:greedy algorithm),又称贪婪算法,是一种在每一步选择中都采取在当前状态下最好或最优(即最有利)的选择,从而希望导致结果是最好或最优的算法。比如在旅行推销员问题中,如果旅行员每次都选择最近的城市,那这就是一种贪心算法。贪心算法在有最优子结构的问题中尤为有效。最优子结构的意思是局部最优解能决定全局最优解。简单地说,问题能够分解成子问题来解决,子问题的最优解能递推到最终问题的最优解。贪心法一般不能得到我们所要求的答案。一旦一个问题可以通过贪心法来解决,那么贪心法

2020-11-09 14:41:49 590

原创 PHP 斐波那契数列 递归和非递归

斐波那契数列斐波那契数列(意大利语:Successione di Fibonacci),又译为菲波拿契数列、菲波那西数列、斐氏数列、黄金分割数列。数学家莱昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”。在数学上,斐波那契数列是以递归的方法来定义:F(0)=0 F(1)=1 F(n)=F(n - 1)+F(n - 2)(n≥ 2,n∈ N*)斐波那契数列由0和1开始,之后的斐波那契数就是由之前的两数相加而得出。首几个斐波那契数是...

2020-11-09 11:16:39 323

原创 PHP 实现冒泡排序算法 (php7.1数组赋值)

冒泡排序冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。算法原理比较相邻的元素。如果第一个比第二个大,就交换他们

2020-11-07 17:54:07 415

原创 PHP 顺时针打印矩阵(螺旋矩阵)

输入一个矩阵,从外向里以顺时针的顺序依次打印出每个数字。例如:1 2 3 4 5 6 7 8 9 $matrix = array();$matrix = [[1,2,3],[4,5,6],[7,8,9]];按照提议打印结果:1,2,3,6,9,8,7,4,5可以使用转圈打印方案,即:1、打印1,2,32、打印6,93、打印8,74、打印45、打印5实现代码:$matrix = [[1,2,.

2020-11-05 18:01:31 178

原创 vue3.0vue-router在3.0版本以上element ui导航栏重复点击报错解决办法

Vue.js 项目控制台报错:Uncaught (in promise) NavigationDuplicated: Avoided redundant navigation to current location: "/user/student".问题原因:多次点击跳转同一路由是不被允许的(版本原因)解决方案:方案一、切换版本回到3.0使用npm运行的切换版本命令npm i [email protected] -S #npm命令使用yarn运行的切换版本命令yarn

2020-09-26 10:04:26 430

原创 MySQL 发生SQL错误(1292)Incorrect date value: ‘0000-00-00 00:00:00‘ for column ‘start_play_date‘ at row 1

导入sql文件时,发生错误:Incorrect date value: '0000-00-00 00:00:00' for column 'start_play_date' at row 1原因是sql_mode默认值含有NO_ZERO_IN_DATE和NO_ZERO_DATE通过以下sql语句查询sql_model的值:show variables like '%sql_mode%';解决办法:执行以下SQL语句讲sql_mode中的NO_ZERO_IN_DATE

2020-09-22 01:57:53 4240 1

原创 Ubuntu server安装VMware tools

开启虚拟机VMware Workstation菜单->虚拟机->安装VMware tools创建一个文件夹,以挂载cdrommkdir /mnt/cdrom你可以先去/dev目录下查看有没有cdrom这个设备cd /dev/挂载cdrom到/mnt/cdrommount /dev/cdrom /mnt/cdrom cd /mnt/cdrom因为在/mnt/cdrom为挂载点。我们连root权限下也不能操作,所以复制出挂载点再操作cp V.

2020-08-17 11:21:40 2790

原创 Docker部署PHP+Nginx、MySQL

PHP+Nginx部署搜索PHP镜像docker search php拉取PHP镜像docker pull php:7.4-fpm创建容器,设置端口映射、目录映射 docker run --name php-fpm -id \ -v ~/nginx/www:/www \ php:7.4-fpm--name php-fpm : 将容器命名为 php-fpm -v ~/nginx/www:/www : 将主机中项目的目录 www 挂载到容器的 /www创建配置文件目录

2020-08-13 23:00:33 574

原创 Linux 配置安装Docker

DockerDocker 是一个开源的应用容器引擎 诞生于 2013 年初,基于 Go 语言实现, dotCloud 公司出品(后改名为Docker Inc) • Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux 机器上。 容器是完全使用沙箱机制,相互隔离 容器性能开销极低。 Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版)d

2020-08-13 22:31:20 114

原创 Ubuntu、Linux使用root用户登录Xftp、xshell

ubuntu使用Xftp、Xshell连接时,ssh服务器拒绝访问。一直显示输入密码,这是由于sshd的设置不允许root用户使用密码进行远程登录。解决办法:修改sshd_config配置文件。如果不存在,检查是否安装了opensshopenssh安装命令:sudo apt-get install openssh-server安装完成通过以下命令查看SSH是否启动ps -e | grep ssh如果只有ssh-agent表示还没启动,需要:/etc/..

2020-08-13 21:55:35 9510 4

原创 Ubuntu设置修改root密码(初始密码)

ubuntu默认的root用户是没有固定密码的,它的密码是随机产生并且动态改变的,即每次开机都有一个新的root密码,如果想查看root密码,那么直接设置的root密码即可。使用安装时候的用户登录进入终端在终端输入命令sudo passwd root #回车会显示以下内容,根据内容输入[sudo] password for kerwin: #输入当前用户密码New password: #输入root新密码Retype new password: #再次输入root密.

2020-08-13 21:40:23 67291 1

原创 ThinkPHP 新建模块

ThinkPHP创建新的模块,例如admin,api1.在根目录下的build.php文件上添加模块原本如图现在添加common,index,admin,api模块'common' => [ '__file__' => ['common.php'], '__dir__' => ['controller', 'mode...

2019-12-29 19:25:20 1458

原创 textarea 添加默认值value

textarea是不能添加value的。但是简单的打个比方:当我们要编辑一些内容而正好用到textarea的时,怎么办呢可以这样,加个ID然后在用script进行追加然后刷新第一个页面成功!...

2019-06-11 19:51:16 39903 5

原创 使用Navicat远程连接MySQL

安装好MySQL后使用小窗口总是不方便的,然后下载了个Navicat远程连接MySQL,结果就出错了:Can't connect to MySQL server (10060)原因是MySQL的用户默认是没有远程访问权限的,因此当访问程序与数据库不是在同一服务器时,就无法访问了。解决办法有两种:1.授权法:赋予任何主机访问数据的权限root@kerwin:/usr/local...

2019-06-11 04:01:42 482

原创 Linux 系统读写执行权限解读

在Linux上操作文件经常需要各种权限,例如查看、写入,都要有权限才能操作。ls -l 或 ls -l xxx.xx 查看权限drwxr-xr-x 11 root root 4096 5月 6 17:01 ../-rw-r--r-- 1 root root 699 6月 3 16:10 xxx.xx那么,权限表示什么意思呢?首先要搞清楚权限的表示符号。读权限...

2019-06-09 01:21:28 1013

原创 笔记本无线网卡使用NAT模式访问VMware 虚拟机固定IP地址

同样的事情不同的地方做,也会踩坑。之前一直是用网线上网,NAT模式访问本地虚拟机的Linux环境,后来没连网线的笔记本用NAT模式,发现不行。VMware虚拟机安装Ubuntu时没有网线,当时用的是桥接连接的网络。然后现在要弄一个固定的IP在虚拟机的环境里,方便访问虚拟机。试过很多办法这个最简单了。先把虚拟机设置的网络连接改为自定义的NAT模式:然后打开虚拟网络编辑器...

2019-06-03 16:58:09 1033

原创 Ubuntu 18.04 源码编译安装MySQL 5.7.23

一般下载有两种方式,一种是直接apt命令下载,另外就是 指定目录下载。类似于windows下面安装程时,一键安装和自定义安装。这里记录的是指定目录下载。开始记录。首先打开官网下载页面:传送门,选择MySQL版本。有两个下载链接,一个是源码里带boost的一个不带的,5.7更新boost库必须。这里选一个不带的。点击No thanks, just start my downloa...

2019-05-09 01:05:56 5409 6

原创 Ubuntu 18.04 安装 Nginx 1.15.12

记录安装Nginx的过程首先打开Nginx下载地址:http://nginx.org/en/download.html,选一个版本,鼠标右键复制链接,例如1.15.12,也可以选择自己 喜欢的版本。然后打开Ubuntu,输入命令操作,注意:切换root用户后不用每次命令输入sudowget http://nginx.org/download/nginx-1.15.12.tar...

2019-05-06 17:08:48 1574

原创 Ubuntu 18.04 源码编译安装PHP7.3.5详细过程

前面安装了新的虚拟机,接下来就是记录一下Ubuntu下源码编译安装PHP7的过程首先是从官网下载源码包https://www.php.net/downloads.php我这里选择的是https://www.php.net/distributions/php-7.3.5.tar.gz打开虚拟机,Ctrl + Alt + T 打开终端 sudo su可以切换超级管理员,不用每次输入...

2019-05-06 02:26:23 5991 4

原创 虚拟机VMware,Ubuntu系统与主机共享文件夹

共享文件夹最大的便捷之处在于,虚拟机与主机可以共同访问一个文件夹,实现文件同步。也就是说在该文件夹里的文件,主机修改保存后,虚拟机也会同步更改。首先,开启虚拟机,进入设置把共享文件夹选项修改为总是启用,然后选择添加选择要添加的共享文件夹启用点击完成。点击确定。然后查看主机共享文件夹,该共享文件夹已经有文件了,如果没有可以创建一个空文件试试再来查看...

2019-04-27 17:57:20 17009

原创 VMware下Ubuntu 安装VMware Tools

VMware安装Ubuntu过程,链接:https://blog.csdn.net/dmedaa/article/details/89527473完成如下图所示但是用着不方便,例如虚拟机屏幕没有全屏铺满,主机与VMware虚拟机之间传输文件,主机与VMware虚拟机之间复制粘贴等等,这时可以安装个VMware Tools ,方便又省事。点开虚拟机 -> 安装VMware...

2019-04-26 23:17:48 194

原创 虚拟机VMware 安装Ubuntu 一遍成功的过程记录

由于需要重新在电脑上安装Linux系统,所以顺便记录下来作为自己在技术上的总结。在Windows上用虚拟机安装Linux应该是很常见的手段,既可以方便日常使用Windows系统,又能进行工作或学习上使用Linux,比起双系统或者多台电脑切换来的快捷。闲话少说,下面开始记录----------------------------------------------------------...

2019-04-26 02:48:34 5167 1

原创 PHP 安装pdo_mysql扩展

在ubuntu搭建号环境后,访问项目时,显示could not find driver原因是没有安装到pdo_mysql扩展windows比较简单,打开php.iniextension=php_pdo_mysql.dll把这个前面分号去掉。然而linux下面是要手动安装。源码安装的php的话,进入到解压的源码目录root@k3rw1n:/usr/local/s...

2019-01-07 16:24:52 6473

原创 微信H5支付

微信H5支付,用于为微信浏览器外拉起微信客户端进行移动支付。注:微信H5支付不需要引入官方文件,官方也没有demo。要求:商户已有H5商城网站,并且已经过ICP备案。通过微信H5支付可以实现在非微信浏览器(如QQ浏览器、谷歌浏览器、Safari等)中使用微信支付的场景。官方流程图: 1、用户在商户侧完成下单,使用微信支付进行支付2、由商户后台向微信支付发起下单请求(调用...

2018-12-24 11:28:44 292

原创 PHP二维码生成,带logo

官网下载地址:http://phpqrcode.sourceforge.net/点击 Download 进入下载页面下载,解压,我们只需要phpqrcode.php 这个文件。拿出放在需要引入的地方。然后以下代码根据需要修改<?phpinclude 'phpqrcode.php';$value = 'https://blog.csdn.net/dmedaa'; //二维...

2018-11-15 20:46:59 141

原创 ECharts 一周每天注册图表

官网http://echarts.baidu.com/ 首先了解官方入门示例,才能更好修改为项目需要的图表。 获取每周时间:function getTime($time =array()) { $stimestamp = strtotime($time['start_time']); $etimestime = strtotime($t...

2018-09-07 12:12:43 1014

原创 mysql导入.frm、.opt、.myi、myd等一堆文件办法

压缩文件或文件夹数据库不知道如何导入,解压后是.frm,opt,myi,myd后缀的文件,因为.frm,opt,myi,myd等文件是储存文件,所以phpMyadmin是无法直接导入。解决:1,到MySQL安装目录下,再找到data文件夹,在下面新建一个文件夹,也就是运行环境下mysql-&gt;data下面,新建一个需要的文件夹。例如abc,然后查看数据库会发现一个abc的数据库也可以直接把项目...

2018-06-30 18:16:55 9780

原创 关于git 与码云

Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。下载不再叙述,本篇主要面向初学者。安装完成后找到git-bash创建本地仓库打开git-bash首先执行以下两条命令,作为自己git的配置身份,提交代码后会显示提交者的身份 git config --global user.name "你的名字"g

2017-06-08 18:32:41 1271

空空如也

空空如也

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

TA关注的人

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