![](https://img-blog.csdnimg.cn/20190927151124774.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据库
文章平均质量分 59
MySQL、SQL Server、Oracle 、PDO、Redis、MongoDB
下页、再停留
这个作者很懒,什么都没留下…
展开
-
【MySQL】mysql数据库小功能整理,持续更新~
1、把从数据库中查询出的两个字段拼接2、新增自定义新字段3、FIND_IN_SET(str,strlist),判断字符串是否在数据表字段(strlist)中原创 2024-03-29 12:04:15 · 379 阅读 · 0 评论 -
【PHP】通过PHP安装数据库并使数据初始化
有些CMS在部署的时候不用使用数据库工具,而是通过数据库安装页面就能完成数据库创建和数据填充,所以自己就想动手做一个这样的功能,这样在给别人安装系统的时候就不用再那么麻烦了,直接一键安装解决了。原创 2024-03-22 15:08:43 · 415 阅读 · 0 评论 -
【MySQL】常见错误汇总
一、远程连接MySQL用户权限问题二、mysql使用聚合函数group by 报错三、MySQL导入数据时 server has gone away原创 2023-10-25 09:30:58 · 145 阅读 · 0 评论 -
【数据库优化-索引】MySQL索引类型详解
索引的类型和存储引擎有关,每种存储引擎所支持的索引类型不一定完全相同。MySQL 索引可以从存储方式、逻辑角度和实际使用的角度来进行分类。转载 2023-06-20 09:05:05 · 84 阅读 · 0 评论 -
【数据库优化-count()】count()统计行数
Mysql8、存储引擎是Innodb。通常情况下,分页接口一般会查询两次数据库,第一次是获取具体数据,第二次是获取总的记录行数,然后把结果整合之后,再返回。查询具体数据的sql,比如是这样的,它没有性能问题。但另外一条使用count(*)查询总记录行数的sql,却存在性能差的问题。为什么会出现这种情况呢?原创 2023-06-01 09:01:57 · 781 阅读 · 0 评论 -
【Mysql】mysql命令大全
增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作(localhost指本地主机,即MYSQL数据库所在的那台主机),这样用户即使用知道test2的密码,他也无法从internet上直接访问数据库,只能通过MYSQL主机上的web页来访问了。但增加的用户是十分危险的,你想如某个人知道test1的密码,那么他就可以在internet上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了,解决办法如下。原创 2023-04-24 17:28:14 · 7036 阅读 · 2 评论 -
【MySQL】实现级联操作(级联更新、级联删除)
一、首先创建两张表stu,sccreate table stu(sid int UNSIGNED primary key auto_increment,name varchar(20) not null)TYPE=InnoDB charset=utf8;create table sc(scid int UNSIGNED primary key auto_increment,si...原创 2017-05-05 11:53:00 · 3507 阅读 · 0 评论 -
【数据库优化-百万数据分页】MySQL百万数据,你如何用分页来查询数据
在开发过程中我们经常会使用分页,核心技术是使用limit进行数据的读取,在使用limit进行分页的测试过程中,得到以下数据:select * from news order by id desc limit 0,10耗时0.003秒select * from news order by id desc limit 10000,10耗时0.058秒select * from news ...原创 2020-10-16 08:50:00 · 124 阅读 · 0 评论 -
【MySQL】PHP如何批量更新MYSQL中的数据
最近项目需要用到批量更新数据库里的数据,在网上找了一下这方面的例子,觉得这个还不错,分享给大家。在这个业务里里面涉及到了更新两张数据表,那么大家是不是会想到非常简单,马上上代码$sql = "update newhouse_clicks set clicks=6,type=1,update_time=time() where is=$value['id']";其中数据表名为newho...转载 2018-07-26 10:03:00 · 235 阅读 · 0 评论 -
【MySQL】php实现备份数据库
public function dataBackup(){ $doc_root=$_SERVER['DOCUMENT_ROOT']; $file_path_name=$doc_root.'/sqlbackup'; //保存到的路径 $name='backup_'.date('YmdHis').".sql"; if(!file_e...原创 2018-09-10 13:34:00 · 164 阅读 · 0 评论 -
【MySQL】使用连接查询
连接查询: 将多张表(可以大于2张)进行记录的连接(按照某个指定的条件进行数据拼接);最终结果是: 记录数有可能变化, 字段数一定会增加(至少两张表的合并)!连接查询的意义: 在用户查看数据的时候,需要显示的数据来自多张表.SQL中将连接查询分成四类:交叉连接,内连接,外连接和自然连接。在介绍之前先创建两张表作为联系(my_stu,my_class)1.交叉连接cross jo...原创 2017-05-10 18:50:00 · 881 阅读 · 0 评论 -
Thinkphp5多数据库切换
在项目开发中需要Thinkphp5读取多个数据库的数据,本文详细介绍Thinkphp5多数据库切换一、在database.php配置默认数据库连接'type' => 'mysql','hostname' => '服务器IP地址','database' => '数据库名','username' => '用户名','...原创 2019-02-28 08:10:00 · 405 阅读 · 0 评论 -
ThinkPHP5分布式数据库读写分离
项目想要数据库读写分离,需要配置两个方面,一个是数据库配置,另一个是ThinkPHP5配置,前面写过一篇关于MySQL读写分离配置的文章MySQL主从同步及读写分离,这篇介绍ThinkPHP5里怎么运用主服务器ip:192.168.8.102,从服务器ip:192.168.8.103一、修改TP5数据库配置文件需要修改服务器地址,用户名,密码,端口,数据库部署方式,开启读写分离第一个I...原创 2020-12-04 16:32:00 · 359 阅读 · 1 评论 -
【数据库优化-MySQL主从分离】主从同步及读写分离
思路:先对主库进行配置,配置成功之后,主库授权从库,然后对从库进行配置,再在从库上设置同步,最后测试。主服务器ip:192.168.8.102,从服务器ip:192.168.8.103一、主库(master)配置1.修改mysql.ini配置文件,在mysqld下添加如下配置,并重启mysql服务[mysqld]server-id=1 //主库和从库要不一致log-bin=mys...原创 2020-12-04 15:28:00 · 105 阅读 · 0 评论 -
【MySQL】linux上,mysql使用聚合函数group by 时报错:SELECT list is not in GROUP BY clause and contains nonaggre的问题
之前在windows上测试是可以正常使用的,但是上传到Linux上后,就报错:Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column ‘sss.month_id’ which is not functionally dependent on columns in GR...原创 2018-10-11 11:12:00 · 457 阅读 · 1 评论 -
带上数据表,分析一下拼团活动该如何设计数据库
拼团活动该如何设计后台创建拼团活动一个成熟的拼团活动包含的四个要素:1 拼团成团商品必须要带上或者关联商品,设置拼团时商品的价格,与原价格肯定要低,这样才能吸引更多的人拼团。2 拼团人数既然是拼着购买,这里设置的人数肯定是不能低于2人的。要不然就不成团了。3 拼团活动有效时间一个拼团活动在开启到失效,需要设置一定时间,既然是一个活动,也就是商品在一定的时间段里能更好的达到促销。...原创 2020-04-16 13:43:00 · 555 阅读 · 0 评论 -
【PDO】事务处理
基本原理和步骤其实都是一样的(可参看上一篇“MySQL的事务处理”),PDO中的事务处理就是调用PDO对象的三个方法:开启事务:beginTransaction回滚操作:rollBack执行操作:commit事务处理最典型的就是借还钱。下面以张三向李四还1000元为例首先看一下数据库中各自的钱数下面是利用PDO处理还钱事务的代码:<?php /*** 利用PDO对象...原创 2017-05-07 13:02:00 · 110 阅读 · 0 评论 -
【PDO】异常处理
PDO提供了三种处理错误的方式PDO::ERRMODE_SILENT:静默模式(默认)PDO::ERRMODE_WARNING:警告模式PDO::ERRMODE_EXCEPTION:异常模式示例:<?php /*** 利用PDO对象实现异常处理操作*/echo "<meta charset=utf-8>";//PDO类的实例化// 1 设置数据源...原创 2017-05-07 16:20:00 · 43 阅读 · 0 评论 -
【PDO】预处理
PDO中的基本的原理和步骤和MySQL中的预处理都是一样的,只不过就是把MySQL中的预处理所有命令行的语法封装成了PDO对象的几个公开的方法而已!1.发送预处理语句此时,我们需要调用pdo对象的prepare方法,得到一个PDOStatement结果对象!2.绑定参数调用PDOStatement对象中的bindParam方法:3.执行预处理语句调用PDOStatement对象中的e...原创 2017-05-06 21:44:00 · 373 阅读 · 0 评论 -
【数据库优化-预处理】MySQL预处理技术
所谓的预处理技术,最初也是由MySQL提出的一种减轻服务器压力的一种技术!传统mysql处理流程1, 在客户端准备sql语句2, 发送sql语句到MySQL服务器3, 在MySQL服务器执行该sql语句4, 服务器将执行结果返回给客户端这样每条sql语句请求一次,mysql服务器就要接收并处理一次,当一个脚本文件对同一条语句反复执行多次的时候,mysql服务器压力会变大,所以...原创 2017-05-06 21:19:00 · 567 阅读 · 0 评论 -
【MySQL】事务的处理
步骤:1.开启事务 start transaction当我们开启一个事务的时候,我们对sql的操作都发生在内存中,但是没有真正的反馈到数据库磁盘的文件中!2.回滚 rollback回滚,就是恢复到事务开启之前的最原始的状态!注意:回滚操作会自动的关闭一个事务,如果想再次执行事务,需要重新开启事务!3.提交 commit事务的基本原理普通的执行,之所以是立即执行并生效,因为默认的,...原创 2017-05-07 12:50:00 · 271 阅读 · 0 评论 -
【数据库优化-replace into】replace into的用法
做项目时遇到这样一个问题,把查询出的数据插入到一个新表里面,第一次可以直接插入,当第二次第三次的时候如果有新的数据直接添加,有旧数据在原有的基础上直接更新。如果先删除再插入的话效率不高,如果对比两端的数据,相同的更新,没有的插入,这样效率也不高,在网上找了找,mysql有一个replace into可以实现,有新数据就自己新增,旧数据就直接更新,其实就是先删除数据,再新增新建一个test表,...原创 2019-05-17 16:42:00 · 471 阅读 · 0 评论 -
【数据库优化-简单优化】优化方案
1.建立索引 (1)合理的索引能够加速数据读取效率,不合理的索引反而会拖慢响应速度; (2)索引越多,更新数据的速度越慢 (3)尽量在MyIsam作为引擎的时候使用索引 (4)可在条件语句上建立索引,where,order by2.大量数据查询时存储引擎使用MyISAM MyISAM与InnoDB的区别 MyISAM:高性能读取,适合大量数据查询;适合做很多count的...原创 2021-03-02 14:46:00 · 54 阅读 · 0 评论 -
【SQL Server】thinkphp5连接sql server
我用的环境是phpstudy,php版本是5.6,thinkphp连接sql server 方法如下:1、修改database.php文件里的数据库信息2、进入php扩展目录。我的是“E:\phpstudy\PHPTutorial\php\php-5.6.27-nts\ext”,查看目录下是否有php_sqlsrv_56_nts.dll,没有就网上下载,一般都会有3、编辑php.ini,...原创 2019-10-24 14:48:00 · 1198 阅读 · 0 评论 -
ThinkPHP5+jQuery+MySql 实现投票功能
【代码】ThinkPHP5+jQuery+MySql实现投票功能。原创 2020-01-16 14:26:00 · 169 阅读 · 0 评论 -
【Redis】Windows下安装Redis,并设置开机自动启动
这篇文章是在Windows上安装redis,关于如何在Linux上安装redis可以参看https://www.cnblogs.com/zxf100/p/14120430.htmlRedis下载地址:https://github.com/tporadowski/redis/releases1.下载redis,并解压2.打开cmd命令行进入redis文件夹下,输入如下命令redis-s...原创 2020-12-07 10:30:00 · 1146 阅读 · 0 评论 -
【Redis】Linux CentOS7下安装Redis
进入到/usr/local/redis-6.0.9/etc/目录下,执行redis-server /usr/local/redis-6.0.9/etc/redis.conf,表示使用redis-server /usr/local/redis-6.0.9/etc/redis.conf配置文件来启动redis服务,如果只是写redis-server来启动redis也是可以的,但是使用的就不是刚刚配置的redis.conf文件了。进入/usr/local/redis-6.0.9/目录下,进行编译与安装。原创 2020-12-11 15:05:00 · 102 阅读 · 0 评论 -
【Redis】Linux下为PHP安装Redis扩展
首先要有运行PHP的环境,(我用的是LAMP环境),还要安装Redis,搭建lamp环境可以参看,安装Redis参看,以上两个条件满足之后,就可以进行以下操作了下载地址,也可以在windows上下载,再传到服务器上,也可以使用如下命令,在linux下载可以把phpredis这个压缩包放到 /usr/local/src/下面,这个文件夹一般存放下载的文件包,没有src的可以 mkdir src 创建src这个文件夹。原创 2020-12-21 10:36:00 · 315 阅读 · 0 评论 -
【Redis】ThinkPHP5+Redis实现购物车
本篇文章是通过ThinkPHP5和Redis实现购物车,功能包括:购物车列表、添加购物车、获取部分商品、获取部分商品总数量、获取全部商品总数量、商品减一、修改商品数量、删除商品、清空购物车,这些功能基本上能够满足购物车的需求,代码写的不够严谨,但大致逻辑就是这样。前提:安装PHP运行环境,安装Redis,PHP安装Redis扩展,需要同时满足以上三个条件才能使用Redis。参考文章:Li...原创 2020-12-22 10:13:00 · 343 阅读 · 0 评论 -
【Redis】Thinkphp5+Redis实现商品秒杀
环境:wamp,redis要求:安装WAMP,Redis,以及为PHP安装Redis扩展(怎么安装Redis可以看看我前面写的文章)秒杀功能大致思路:获取缓存列表的长度,如果长度(llen)等于0,就停止秒杀,即秒杀失败,如果长度大于0,则继续运行,先从缓存中移除一个元素(lpop),再进行数据库操作(添加订单表,商品库存数量减一),如果再进一个人秒杀,就再走一遍流程,循环往复。打开phpinfo.php,查看PHP版本,我的是PHP7.3.4,还有一个需要注意Architecture x64。原创 2020-12-22 16:45:00 · 426 阅读 · 0 评论 -
【Redis】PHP操作Redis常用命令
【代码】PHP操作Redis常用命令。原创 2020-12-22 17:07:00 · 205 阅读 · 0 评论 -
【Redis】PHP+Redis实现排行榜
通过php和redis实现一个小功能排行榜,用的数据类型是有序集合:zrevrange 递增排序,zrange 递减排序。原创 2020-12-23 11:12:00 · 279 阅读 · 0 评论