Mysql/MongoDb
文章平均质量分 70
Everything1209
my god
展开
-
mysql去掉查询后的json字段中的字符串两边的双引号
场景:部分字段是采用json存储的,当需要查询json字段中的某一个值时,不处理的话,会默认取出双引号mysql字段中的json{"return_code":"SUCCESS","return_msg":{},"mch_appid":"wx123456","mchid":"123456","nonce_str":"mmvfvm7r","result_code":"SUCCESS","partn...原创 2020-01-09 10:48:53 · 6621 阅读 · 1 评论 -
mysql数据库目录存放位置更改
使用了VPS一段时间之后发现磁盘空间快满了。本人的VPS在购买的时候买了500gbd的磁盘,提供商赠送了20GB的高性能系统磁盘。这样系统就有两个磁盘空间了。因此在初次安装mysql 的是时候将数据库目录安装在了系统盘。(第一个磁盘)使用了一段时间之后数据库存储量变大,快将20GB的存放空间占满了。因此必须将存放数据空间换地方了。嘿嘿下面是简单的操作了,不合理之处还请大侠们指点。操转载 2015-07-02 09:50:18 · 5999 阅读 · 0 评论 -
navicat远程连接报1130不允许连接错误
用Navicat for mysql连接数据库测试下连接 如果出现1130错误错误代码是1130,ERROR 1130: Host xxx.xxx.xxx.xxx is not allowed to connect to this MySQL server论坛上有些朋友说关掉防火墙就好了(其实不是防火墙的问题)是无法给远程连接的用户权限问题接下来我们解决这个问题用putty登录服务转载 2015-01-05 10:13:45 · 3900 阅读 · 0 评论 -
mysql5.7.10开启慢查询
#在/etc/my.cnf中的[mysqld]中加入如下代码:slow-query-log=Onslow_query_log_file=/data/mysql/log/mysql_slow_query.loglong_query_time=5log_queries_not_using_indexes = ON第一句是开启慢查询 第二句是用来定义慢查询日志的路径 第三句是用来定义查过多少秒原创 2016-07-29 11:19:25 · 2947 阅读 · 0 评论 -
Mysql常用查询
日期查询查询指定一天的数据或者单天的数据#返回当前日期为'YYYY-MM-DD“或YYYYMMDD格式的值,根据该函数是否用在字符串或数字语境中。SELECT curdate();#查询添加时间为2016-5-19的数据,(查询某一天)select *,FROM_UNIXTIME(addtime) from ci_insurance where date(FROM_UNIXTIME(addt原创 2016-05-20 10:20:17 · 406 阅读 · 0 评论 -
MySQLi扩展库
mysqli扩展优势mysqli扩展,我们有时称之为MySQL增强扩展,可以用于使用 MySQL4.1.3或更新版本中新的高级特性; mysqli扩展在PHP 5及以后版本中包含; mysqli扩展有一系列的优势,相对于mysql扩展的提升主要有:面向对象接口、 prepared语句支持、多语句执行支持、事务支持、增强的调试能力、嵌入式服务支持。mysqli扩展安装和验证mysqli扩展安装扩展原创 2016-05-19 20:23:17 · 674 阅读 · 0 评论 -
PHP模糊查询
模式查询 1. SQL匹配模式 2. 正则表达式匹配模式(一般不推荐使用)SQL匹配模式1.使用sql匹配模式,不能使用操作符=或!=,而是使用操作符LIKE或NOT LIKE; 2.使用sql匹配模式,MYSQL提供了2种通配符。 %表示任意数量的任意字符(其中包括0个) _表示任意单个字符 3.使用sql匹配模式,如果匹配格式中不包含以上2种通配符中的任意一个,其查询的效果等同于原创 2016-05-11 19:37:49 · 2146 阅读 · 0 评论 -
mysql innodb 优化 参数篇
转载自:http://blog.csdn.net/leonzhang2008/article/details/5414619 介绍: InnoDB给MySQL提供了具有提交,回滚和崩溃恢复能力的事务安全(ACID兼 容)存 储引擎。InnoDB锁定在行级并且也在SELECT语句提供一个Oracle风格一致的非锁定读。这些特色增加了多用户部署和性能。没有在InnoDB 中扩大锁定的需要,因为转载 2016-04-07 15:40:56 · 527 阅读 · 0 评论 -
mysql innodb的行级锁和表锁
我们一般认为mysql innodb不是行级锁吗? 怎么会把整个表锁死? 什么情况会使Innodb锁表呢? 要实现行级锁, 需要考虑一个问题, 如何才能 判定 一行正在被使用?mysql使用索引的方式, 这样当其它查询或修改时根据索引找到这一行的时候, 发现索引被上了锁, 就会等待,如果查询不是通过索引访问的,那就是 通过简单的遍历所有行得到目标的,那就会给整个表加上锁,所以要优化你的数据库表原创 2016-03-30 14:43:35 · 5046 阅读 · 0 评论 -
mysql添加多个字段
ALTER TABLE cms_member ADD `director_add_time` INT (11) UNSIGNED DEFAULT '0' COMMENT '升级为主任的时间', `manager_add_time` INT (11) UNSIGNED DEFAULT '0' COMMENT '升级为经理的时间', `president_add_time` INT (10) U原创 2016-01-27 17:22:12 · 39249 阅读 · 4 评论 -
mysql语句:批量更新多条记录的不同值
http://www.ghugo.com/update-multiple-rows-with-different-values-and-a-single-sql-query/转载 2016-11-17 10:28:50 · 1687 阅读 · 0 评论 -
mongodb学习笔记
一:安装和启动1.第一种定义配置文件./mongod -f ../etc/mongo.conf(带配置文件启动) 或./mongod,服务器默认端口27017./mongod --shutdown或./mongod -f ../etc/mongo.conf --shutdownmongodb.confmongodb配置文件自定义启动参数logpath=..原创 2015-05-02 21:59:40 · 1709 阅读 · 0 评论 -
php、mysql查询当天,查询本周,查询本月的数据(字段是时间戳)
mysql查询当天,查询本周,查询本月的数据(字段是时间戳)//其中 video 是表名;//createtime 是字段;////数据库time字段为时间戳////查询当天:$start = date('Y-m-d 00:00:00');$end = date('Y-m-d H:i:s');SELECT * FROM `table_name` WHERE `time` >= uni原创 2016-11-18 14:17:36 · 16053 阅读 · 0 评论 -
mysql设置密码
有很多方法:1.用root 进入mysql后mysql>set password =password('你的密码');mysql>flush privileges;2.使用GRANT语句 mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的密码'with grant option ;mys...转载 2014-12-20 12:01:19 · 561 阅读 · 0 评论 -
Mysql高可用架构设计
什么是高可用导致不可用的可能因素如何实现高可用如何避免单点故障MMM架构介绍MHA架构介绍读写分离和负载均衡介绍MaxScale的使用和安装什么是高可用高可用指的是通过尽量缩短因日常维护操作和突发的系统崩溃所导致的停机时间,以提高系统和应用的可用性导致不可用的可能因素服务器磁盘空间耗尽性能糟糕的SQL表结构和索引没有优化主从数据不一致人为的操作失误……….如何实现高可用原创 2017-01-12 22:38:37 · 2663 阅读 · 0 评论 -
mysql复制工作方式
mysql复制工作方式主服务器将变更写入二进制日志从服务器读取主服务器的二进制日志变更写入到relay_log中在从服务器上重放relay_log中的日志基于SQL段(statement)的日志是在从服务器上重新执行记录的SQL基于行的日志(row)则是在从库上直接应用对数据库行的修改基于日志点的复制基于日志点的复制步骤:在主DB服务器上建立复制账号CREATE USER 'repl原创 2017-01-11 20:44:59 · 719 阅读 · 0 评论 -
mysql二进制日志
mysql二进制日志binlog工具binlog二进制日志的格式STATEMENTbinlog二进制日志的格式ROW建议的方式binlog二进制日志的格式MIXEDbinlog二进制日志记录方式的选择mysql二进制日志Mysql二进制日志记录了所有对mysql的修改事件,包括增删改查和对表结构的修改Mysql二进制日志记录的都是成功执行的语句,没有成功执行,回滚了的sql和语法错误原创 2017-01-10 00:01:18 · 845 阅读 · 0 评论 -
Mysql数据库结构优化
影响Mysql数据库的因素数据库结构优化的目的数据库结构设计的步骤数据库设计范式数据库设计的第一范式数据库设计的第二范式数据库设计的第三范式反范式化设计数据库物理设计定义数据库表及字段的命名规范选择合适的存储引擎物理设计-数据类型的选择影响Mysql数据库的因素服务器硬件操作系统mysql服务器配置数据库结构(影响最大)良好的数据库逻辑设计和物理设计是数据库获得高性能原创 2017-01-09 21:23:09 · 3927 阅读 · 0 评论 -
Mysql基准测试
什么是基准测试定义如何进行基准测试基准测试的目的如何进行基准测试mysql基准测试的性能指标基准测试的步骤基准测试中容易忽略的问题常用的基准测试工具介绍Mysql基准测试工具之mysqlslapMysql基准测试工具之sysbench什么是基准测试定义基准测试是一种测量和评估软件性能指标的活动,用于建立某个时刻的性能基准,以便当系统发生软硬件变化时重新进行基准测试以评估变化对性能原创 2017-01-08 21:29:14 · 3724 阅读 · 0 评论 -
服务器性能优化和Mysql性能优化
影响性能的几个因素服务器硬件CPU内存IO子系统服务器系统CentOS系统参数优化sysctlconf 优化limitconf参数优化磁盘调度策略文件系统对性能的影响数据库存储引擎的选择MyIsamInnodbMySQL常用存储引擎之CSVMySQL常用存储引擎之ArchiveMySQL常用存储引擎之MemoryMySQL常用存储引擎之Federated如何选择存原创 2017-01-07 00:11:57 · 10383 阅读 · 1 评论 -
深夜记录一次Mysql5.7.10的密码失效问题
情景:在公司的数据库服务器上安装的mysql版本是[root@hotdata ~]# mysql -Vmysql Ver 14.14 Distrib 5.7.10, for Linux (x86_64) using EditLine wrapper安装好后,并且设置了密码,但是现在突然提示密码失效了,在mysql终端提示信息为:ERROR 1820 (HY000): You must res原创 2016-12-06 00:06:16 · 4021 阅读 · 0 评论 -
InnoDB引擎Myslq数据库数据恢复
注明:此方法不适用于delete删除的数据表,只适用于drop转载自http://www.cnblogs.com/liukemng/p/3423264.html实际操作过一遍后,把一些遇到的问题列出来1、编译时报ERRORmake 出错: /usr/bin/ld: cannot find -lrtyum install glibc-static解决办法:http:/转载 2015-12-01 14:02:09 · 558 阅读 · 0 评论 -
数据库迁移全记录
前言:1)A服务器(mysql版5.5)上的数据库文件是放在系统盘的(心塞),配置mysql的时候千万要改数据库存放路径,系统盘的空间才20G,目前买了一台新的数据库服务器,只做数据处理,所以要迁移到新的服务器上。2)目标服务器也是阿里云的ECS(mysql版本5.7),所以想直接通过内网复制把数据库的存放目录整体迁移,可是移过去后却是有部分表打不开,不知道为啥,为了没有mysql版本兼容等问题,...原创 2015-12-24 15:07:15 · 2448 阅读 · 0 评论 -
MySQL数据类型:SQL_MODE设置不容忽视
http://tech.it168.com/a2012/0822/1388/000001388401_all.shtmlSQL_MODE可能是比较容易让开发人员和DBA忽略的一个变量,默认为空。SQL_MODE的设置其实是比较冒险的一种设置,因为在这种设置下可以允许一些非法操作,比如可以将NULL插入NOT NULL的字段中,也可以插入一些非法日期,如“2012-12-32”。因此在生转载 2015-12-28 11:32:51 · 14588 阅读 · 0 评论 -
Mysql数据库int(1)和tinyint(1)的区别
精简总结:tinyint(1) 和 tinyint(3) 没什么区别,占用字节都是一位,存储范围都是一样的!混淡!tinyint(3) zerofill ,当插入的数据少于3位的时候,左边自动补零,这才是限制显示长度啊混淡!int(1) 和 tinyint(1) ,够用的情况下,优先选择tinyint(1),因为占字节少、节省空间。tinyint一个字节 smallint转载 2014-09-01 10:14:55 · 948 阅读 · 0 评论 -
一千行MySQL学习笔记
/* 启动MySQL */net start mysql/* 连接与断开服务器 */mysql -h 地址 -P 端口 -u 用户名 -p 密码/* 跳过权限验证登录MySQL */mysqld --skip-grant-tables-- 修改root密码密码加密函数password()update mysql.user set password=password('root'转载 2014-08-22 13:44:48 · 613 阅读 · 0 评论 -
Mysql字符串截取函数SUBSTRING的用法说明
函数: 1、从左开始截取字符串 left(str, length) 说明:left(被截取字段,截取长度) 例:select left(content,200) as abstract from my_content_t 2、从右开始截取字符串 right(str, length) 说明:right(被截取字段,截取长度) 例:select right(conten转载 2014-06-03 13:59:10 · 741 阅读 · 0 评论 -
MySQL concat函数的使用
作为MySQL函数中的代表函数,concat函数返回结果为连接参数产生的字符串,该函数可以可以连接一个或者多个字符串,极具实用价值MySQL concat函数是MySQL数据库中众多的函数之一,下文将对MySQL concat函数的语法和使用进行说明,供您参考和学习。MySQL concat函数使用方法:CONCAT(str1,str2,…) 返回结果为连接参数产生的字转载 2014-06-03 14:20:47 · 656 阅读 · 0 评论 -
mysql常见问题解决办法
1.使用mysql语句时,提示如下信息。原创 2014-05-28 11:09:02 · 648 阅读 · 0 评论 -
mysql中char与varchar的区别分析
mysql中char与varchar的区别分析作者: 字体:[增加 减小] 类型:转载在mysql教程中char与varchar的区别呢,都是用来存储字符串的,只是他们的保存方式不一样罢了,char有固定的长度,而varchar属于可变长的字符类型。char与varchar的区别 char (13)长度固定, 如'ww转载 2014-05-28 10:39:17 · 595 阅读 · 0 评论 -
mysql创建和删除索引
创建和删除索引索引的创建可以在CREATE TABLE语句中进行,也可以单独用CREATE INDEX或ALTER TABLE来给表增加索引。删除索引可以利用ALTER TABLE或DROP INDEX语句来实现。(1)使用ALTER TABLE语句创建索引。语法如下:alter table table_name add index index_name (column_l转载 2014-07-21 11:13:49 · 559 阅读 · 0 评论 -
循环遍历时,中文无法写入mysql
<?phpheader('Content-Type: text/html; charset=utf-8'); require_once './Mysql.class.php';$arr=array("花子与安妮48","b",c);foreach ($arr as $v){ $sql="INSERT INTO movie_list (movie_name) VALU原创 2014-06-10 17:15:22 · 772 阅读 · 0 评论 -
Mysql复制表结构、表数据
1、复制表结构及数据到新表CREATE TABLE 新表SELECT * FROM 旧表这种方法会将oldtable中所有的内容都拷贝过来,当然我们可以用delete from newtable;来删除。不过这种方法的一个最不好的地方就是新表中没有了旧表的primary key、Extra(auto_increment)等属性。需要自己用"alter"添加,而且容易转载 2014-06-03 15:59:16 · 542 阅读 · 0 评论 -
mysql sql no cache
缓存2(SQL_NO_CACHE和SQL_CACHE的区别) 可以在 SELECT语句中指定查询缓存的选项,对于那些肯定要实时的从表中获取数据的查询,或者对于那些一天只执行一次的查询,我们都可以指定不进行查询缓存,使用SQL_NO_CACHE 选项。对于那些变化不频繁的表,查询操作很固定,我们可以将该查询操作缓存起来,这样每次执行的时候不实际访问表和执行查询,只是从缓存获得结果,转载 2014-09-16 10:54:24 · 1653 阅读 · 0 评论 -
MySQL 索引分析和优化
一、什么是索引? 索引用来快速地寻找那些具有特定值的记录,所有MySQL索引都以B-树的形式保存。如果没有索引,执行查询时MySQL必须从第一个记录开始扫描整个表的所有记录,直至找到符合要求的记录。表里面的记录数量越多,这个操作的代价就越高。如果作为搜索条件的列上已经创建了索引,MySQL无需扫描任何记录即可迅速得到目标记录所在的位置。如果表有1000个记录,通过索引查找记录至少要比顺序扫描转载 2014-09-03 11:53:45 · 480 阅读 · 0 评论 -
mysql5.7.9资料
http://www.skyf.org/reset-mysql579-root-password/转载 2015-12-11 21:22:11 · 561 阅读 · 0 评论 -
查询本周的所有数据
1.拿到本周的所有日期/** 根据当前日期获取本周或上周的日期* time = 0 返回本周的所有日期* time = 1 返回上周的所有日期* 返回日期格式为时间戳*/ function GetDateForWeek($time = 0) { $week = date("w"); $date = array(); for ($i = 1; $i < 8;原创 2015-11-11 15:33:27 · 767 阅读 · 0 评论 -
在navicat上设置定时计划执行存储过程
应用情景:有一个存储过程,需要每天定时执行一次。所以在navicat上使用事件处理,当然还有其他的方法,这只是一种。作为参考1.事件定义填写2.事件计划设置3.保存点击上方保存即可常见问题: navicat for mysql 创建事件的时候,保存时弹出提示“事件计划已关闭。事件只能在服务器启动并开启事件计划时才能处理。解决方原创 2015-09-17 11:59:54 · 12430 阅读 · 0 评论 -
定时执行备份mysql
备份mysql的shell脚本#!/bin/sh # mysql_backup.sh: backup mysql databases and keep newest 5 days backup. # # Last updated: 28 Sep 2015 # ----------------------------------------------------------------原创 2015-10-16 14:16:21 · 458 阅读 · 0 评论 -
取出所有树形结构父节点下的子节点(用存储过程实现)
分析:常规的话,都会想到用递归去实现,可是递归只能调用自身100次,很容易就提示错误了。所以这里采用存储过程的方式,将父节点下的所有子节点取出表结构:/*Navicat MySQL Data TransferSource Server : localhostSource Server Version : 50520Source Host : l原创 2015-05-06 17:50:24 · 1480 阅读 · 0 评论