
mysql
youcijibi
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
mysql根据条件查询两个时间段是否有交集
1.需求:查询两个时间段是否有交集2.分析:分为三种情况:入参:查询开始时间,查询结束时间数据库字段:start_date,end_date 2.1 :查询开始时间在start_date与end_date之间,则肯定有交集 2.2 :查询结束时间在start_date与end_date之间,则肯定有交集 2.3:查询开始时间>=start_date,并且,查询结束时间<=end_date,则肯定有交集其余情况则无时间范围的交集了。3.sql成型.转载 2021-12-17 09:34:28 · 3156 阅读 · 0 评论 -
Mysql查询数据库表创建时间
SELECT CREATE_TIME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='mis_base' AND TABLE_NAME='offcn_class_duty_feedback'原创 2021-08-26 15:39:47 · 1427 阅读 · 0 评论 -
Mysql手机号替换为****
Mysql手机号码四位替换为****并进行查询$data = $sfApplyModel->getOne("send_realname='{$send_realname}' and REPLACE(send_phone,SUBSTR(send_phone,4,4),'****') = '{$send_phone}' and receive_realname='{$receive_realname}' and REPLACE(receive_phone,SUBSTR(receive_phone,4原创 2021-05-17 16:32:23 · 854 阅读 · 0 评论 -
Mysql手机号码四位替换为****并进行查询
Mysql手机号码四位替换为****并进行查询 $data = $sfApplyModel->getOne("send_realname='{$send_realname}' and REPLACE(send_phone,SUBSTR(send_phone,4,4),'****') = '{$send_phone}' and receive_realname='{$receive_realname}' and REPLACE(receive_phone,SUBST.原创 2021-06-24 10:46:09 · 599 阅读 · 0 评论 -
MySQL服务常见的无法启动或启动异常处理
MySQL服务常见的无法启动或启动异常处理详细描述常见问题处理描述,目录如下。提示:MySQL错误日志通常记录在/alidata/log/mysql/error.log文件下。MySQL配置文件my.cnf权限问题导致无法启动,错误提示“World-writable config file '/etc/my.cnf' is ignored”Binlog 丢失导致无法启动,错误日志: File './mysql-bin.000001' not foundBinlog无法读取导致无法原创 2020-12-04 20:44:34 · 3072 阅读 · 0 评论 -
mysql binlog日志删除
今天发现磁盘被占满,检查后是binlog日志占用太多,所以删除下mysql的binlog日志介绍Binlog是mysql以二进制形式打印的日志,它默认不加密,不压缩。binlog二进制日志包含了所有更新了数据或者已经潜在更新了数据(例如,没有匹配任何行的一个DELETE)的所有语句。语句以“事件”的形式保存,它描述数据更改文件位置和格式:当用--log-bin[=file_name]选项启动时,mysqld写入包含所有更新数据的SQL命令的日志文件。如果未给出file_name值, 默认名为-bin原创 2020-09-02 20:03:16 · 749 阅读 · 0 评论 -
php的一种导出
if ($export) { // $this->error('暂停使用'); @set_time_limit(0); ini_set('memory_limit', '2000M'); header("Content-type:application/vnd.ms-excel"); header("Content-Disposition:filename=".ic...原创 2020-07-09 14:32:15 · 161 阅读 · 0 评论 -
Mysql对json数据进行查询及修改
使用 字段->'$.json属性' 进行查询条件 使用 json_extract 函数查询,json_extract(字段, "$.json属性") 根据json数组查询,用 JSON_CONTAINS(字段, JSON_OBJECT('json属性', "内容")) : [{}]查询这种形式的json数组 MySQL5.7以上支持JSON的操作,以及增加了JSON存储类型 一般数据库存储JSON类型的数据会用JSON类型或者TEXT类型示例:我这里没有创建json的字段格式..原创 2020-06-02 16:46:14 · 18435 阅读 · 0 评论 -
Mysql json数据的操作
一、方法分类 函数 描述创建jsonjson_array 创建json数组json_object 创建json对象json_quote 将json转成json字符串类型查询jsonjson_contains 判断是否包含某个json值json_contains_path 判断某个路径下是否包json值json_extract 提取json值column->path json_extract的简洁写法,MySQL 5.7.9开始支持column->>path json原创 2020-06-02 15:10:42 · 631 阅读 · 0 评论 -
Docker 部署 Mysql8.0及持久化
https://blog.youkuaiyun.com/xsj34567/article/details/80940238原创 2019-12-22 22:46:59 · 1111 阅读 · 0 评论 -
Docker部署mysql5.7.28与数据持久化
思路: docker容器部署mysql5.7.28,mysql配置文件挂载宿主机(方便修改),mysql数据库文件与log写入到宿主机目录(数据持久化)下载mysql镜像进入mysql镜像库选择5.7.28的镜像,并下载docker pull mysql:5.7.28准备挂载目录与文件1. 宿主机下新建数据库文件目录sudo mkdir -p /home/docker_my...转载 2019-12-22 22:43:30 · 1059 阅读 · 0 评论 -
数据库连接报错:SQLSTATE[HY000] [2002] No such file or directory
无论是pdo还是mysqli出现这个问题的原因是php操作mysql无法找到mysql.sock或者mysqld.sock,这根据你的mysql配置文件而定,比如[mysqld]basedir=/usr/local/mysqldatadir=/usr/local/mysql/datapid-file=/usr/local/mysql/mysqld.pidsocket=/usr/l...原创 2019-12-09 16:58:40 · 6320 阅读 · 0 评论 -
mysql索引的创建及删除
语法:创建:一,普通索引create index index_name on table_name(`column_name`);alter table table_name add index_name (`column_name`);二,主键索引无法使用create 语法来创建主键索引,只能用alteralter table ta原创 2017-09-01 10:02:47 · 251 阅读 · 0 评论 -
Mysql建表时带索引报错问题处理: Specified key was too long; max key length is 1000 bytes
使用Mysql建表时,表中带有若干个索引,这时报错:ERROR 1071 (42000): Specified key was too long; max key length is 1000 bytes如下表:CREATE TABLE `my_table` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `oid` int(11)...原创 2019-03-04 19:20:48 · 4808 阅读 · 0 评论 -
mysql格式化日期与时间戳
SELECT DATE_FORMAT(NOW(),'%Y-%m-%d %H:%i:%s')时间戳:函数:FROM_UNIXTIME作用:将MYSQL中以INT(11)存储的时间以"YYYY-MM-DD"格式来显示。语法:FROM_UNIXTIME(unix_timestamp,format)返回表示 Unix 时间标记的一个字符串,根据format字符串格式化。format可...原创 2019-03-18 14:19:54 · 1632 阅读 · 0 评论 -
一段mysql,查出符合条件的所有数据并作为单条数据返回
$hbzt = $this->subject_data->field("GROUP_CONCAT( `data`SEPARATOR ',' ) AS data,merger_main,GROUP_CONCAT( `merger_child`SEPARATOR ',' ) AS merger_child")->where("apply_id = " . $v['id'])->...原创 2019-03-22 18:32:01 · 2143 阅读 · 0 评论 -
MYSQL Error 2006:MySQL server has gone away的解决方案
MySQL server has gone away有几种情况。1、应用程序(比如PHP)长时间的执行批量的MYSQL语句。 最常见的就是采集或者新旧数据转化。 解决方案: 在my.cnf文件中添加或者修改以下两个变量:wait_timeout=2880000interactive_timeout = 2880000 关于两个变量的具体说明可...转载 2019-06-12 10:25:50 · 1297 阅读 · 0 评论 -
Mysqltinyint类型推及到其他整数类型
tinyint类型代表一个字节,如果一个数字大小超过一个字节,则无法保存。 tinyint有两种类型,第一种(默认)可以储存正负数;第二种指定字段unsigned,只能储存正数。 (1) . 第一种储存过程:一个字节共有8位,将第一个字节作为正负标志,不做数据储存,其中第一个字节为1=负,0=正。所以最大负数为11111111=-127(将后面7位转为十进制制),最大正数为01111111=1...原创 2019-08-01 18:12:23 · 526 阅读 · 0 评论 -
mysql count(*)优化
近一段时间,有同事问我 “MySQL执行count很慢,有没有什么优化的空间”。当时在忙,就回复了一句“innodb里面count统计都是实时统计,慢一些是正常的”, 周末闲暇下来,想到以前有好多人都问过关于count的问题,今天就聊聊MySQL之Count查询。 关于MySQL的count查询,很多人都会有疑问,同样在大表中执行 ,有些速度基本不耗时,有些又慢的要死。关于这些问...转载 2019-08-15 14:03:00 · 19373 阅读 · 1 评论 -
mysql(mariadb)修改数据库名称的方法
如果表示MyISAM那么可以直接去到数据库目录mv就可以。一,最简单的 :把数据库停掉,然后去data目录把文件夹名称改了,然后重启就可以了。二,Innodb完全不行,会提示相关表不存在,暂未测试。第一种方法:RENAME database olddbname TO newdbname这个是5.1.7到5.1.23版本可以用的,但是官方不推荐,会有丢失数据的危险第二...原创 2019-09-25 10:00:52 · 3362 阅读 · 0 评论 -
mysql的in查询是可以用到索引吗?
一、前言 如题所示,这个问题很早之前就听过了,之前我也是一直以为in查询是用不到索引的。后来陆陆续续看到很多博客,有的说in查询可以用索引,有的说不能用索引,所以博主就越发好奇起来。到底能不能用索引,绝对有个正确的答案,而不是这样的模棱两可。二、in查询的一些总结 首先呢,博主自己测试自己写的一条sql,是包含in查询的。查看执行计划explain,发现是用到了索引的...转载 2019-10-11 09:52:51 · 4861 阅读 · 0 评论 -
MySQL 建表字段长度的限制
脑补,varchar(N),N指的是最大字符数,不是字节数。先上测试说明:在MySQL建表时,遇到一个奇怪的现象:root@localhost : test 10:30:54>CREATE TABLE tb_test ( -> recordid varchar(32) NOT NULL, -> areaShow varchar(10000) DEF...转载 2019-03-04 19:16:48 · 1706 阅读 · 0 评论 -
启动mysql时 内存不足引发的问题处理
报错信息如下:Out of memory error: InnoDB: Fatal error: cannot allocate memory for the buffer poolInnoDB can't start without enough memory [ERROR] Plugin 'InnoDB' init function returned error.[ERROR] Plug...原创 2019-03-06 21:08:33 · 622 阅读 · 0 评论 -
liunx7下centos6.8编译安装mysql-5.7.18
一,准备工作如果cmake已经首先安装好,那么编译Mysql,先对当前目录.查看依赖关系 cmake –graphviz 1,在当前环境下查看3306端口是否被防火墙开启:firewall-cmd --query-post=3306/tcp如果为no,则执行以下命令开启3306端口通过防火墙firewall-cmd --permanent --add-po...原创 2017-07-13 15:23:00 · 664 阅读 · 0 评论 -
MySQL中tinytext、text、mediumtext和longtext等各个类型详解
一、字符串类型类型范围说明Char(N) [ binary]N=1~255 个字节binary :分辨大小写固定长度std_name cahr(32) not nullVarChar(N) [binary]N=1~255 个字节binary :分辨大小写可变长度std_address varchar(256)TinyBlob最大长度255个字节(2^8-1)Blob (Binary large ...原创 2018-06-13 08:55:24 · 213292 阅读 · 10 评论 -
当需要插入mysql的数据包含单双引号时处理方法
当需要插入mysql的数据包含单双引号时处理方法原创 2017-10-12 15:16:01 · 10619 阅读 · 1 评论 -
php插件包带php-fpm插件包的nginx+php-fpm+apc+mysql编译安装
nginx+php-fpm+apc+mysql编译安装目前让PHP最快的环境组合是:Nginx + PHP-FPM + APC + MYSQL。本文将讲解 nginx 服务器、php、apc、mysql的安装配置及应用。安装前提示:linux 软件在编译安装后,他的安装位置和配置文件都可以在源码目录中的文件中找到,如果无法确定软件的相关文件安装在哪里,可以仔细的查看一下源码中的文本文件。转载 2017-09-11 17:15:27 · 646 阅读 · 0 评论 -
mysql-5.5源码编译安装(附参数对照表)
自5.5以后的版本都需要cmake编译安装,so...先安装cmake编译器[plain] view plain copy print?安装必要的组件 yum -y install cmake yum -y install bison yum -y install ncurses-devel 添加账户 groupadd mysql转载 2017-09-11 17:12:51 · 642 阅读 · 0 评论 -
关于sql加反引号与不加反引号的理解
在mysql中的sql语句中常常为了避免与系统冲突而给表名加上反引号 ` ` ,但如果再想要指定其他数据库时则不能加,否则会被认作是表,举例如下:当前在edu数据库中查询bbs库的thread表和reply表:$query = $this->db->query("SELECT c.*,cc.* FROM bbs.thread as c LEFT JOIN bbs.reply原创 2017-09-13 14:28:15 · 3861 阅读 · 0 评论 -
PDO连接数据库报错:SQLSTATE[HY000] [2002] No such file or directory
PDO连接数据库报错:“SQLSTATE[HY000] [2002] No such file or directory”。 出现这个问题的原因是PDO无法找到MySQL.sock或者mysqld.sock。 解决方法1:找到相应的.sock文件,并设置PHP.ini文件中的pdo_mysql.default_socket的值为.sock文件的路径。pdo_my转载 2017-08-10 17:12:25 · 4308 阅读 · 0 评论 -
mysql source的导入小记
导入sql的命令行如下:source "路径名"+/mytest_emp_dept.sql如果文件sql过大为了防止超时在mysql的安装目录下 找到 my.ini文件 加入以下代码:interactive_timeout = 120wait_timeout = 120max_allowed_packet = 32M原创 2017-08-10 14:53:45 · 291 阅读 · 0 评论 -
PDO方式操作MYSQL的使用
[php] view plain copy $db = new PDO('mysql:host=localhost;dbname=access_control', 'root', ''); $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $db->exec('s转载 2017-08-09 17:11:26 · 526 阅读 · 1 评论 -
mysql 8.x编译安装
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_TCP_PORT=3306 -DWITH_MYISAM_STORAGE_ENGINE=1 -DWI...原创 2018-07-05 14:39:33 · 839 阅读 · 0 评论 -
localhost不能访问127.0.0.1可以访问的原因及解决方法
有时候我们在调试程序的时候,会出现一些莫名其妙匪夷所思的奇怪问题,localhost不能访问但127.0.0.1可以访问的问题就是其中之一。也包括MYSQL数据库与PHP使用mysql.sock通信时需要把localhost修改为127.0.0.1的问题以下所说的思路与LINUX同理:我估计大多数人都不会去想localhost到底与127.0.0.1有什么不同,就比如我,有时候用http://lo...转载 2018-07-06 21:06:59 · 19400 阅读 · 2 评论 -
Fatal error: Can't open and lock privilege tables: Table 'xxxxx' doesn't exist
mysql无法启动,日志中提示an't open and lock privilege tables.....这类信息解决 :chown -R mysql:mysql /mysql编译安装的地址原创 2019-02-23 16:35:00 · 679 阅读 · 0 评论 -
mysql 从一个表中查数据并插入另一个表实现方法
类别一、 如果两张张表(导出表和目标表)的字段一致,并且希望插入全部数据,可以用这种方法:INSERT INTO 目标表 SELECT * FROM 来源表 ;例如,要将 articles 表插入到 newArticles 表中,则可以通过如下SQL语句实现:INSERT INTO newArticles SELECT * FROM articles ;类别二、 如...原创 2019-02-12 17:17:33 · 1607 阅读 · 0 评论 -
MySQL给一个字段递增赋值
首先设置一个变量,初始值为0:set @r:=0;然后更新表中对应的ID列:update tablename set id=(@r:=@r+1)如果是插入,那就找一个记录多的表t1set @r:=0;insert into t select @r:=@r+1 from t1 limit 0, 2000 ...转载 2019-02-12 17:16:28 · 1607 阅读 · 0 评论 -
单台机器多mysql实例修改端口号
配置my.cnf文件即可:[client] port = 3307 socket = /usr/local/mysql5.6/mysql.sock [mysqld_safe] #pid-file = /usr/local/mysql5.6/pids/mysql.pid log-error = /usr/local/mysql5.6/logs...原创 2018-09-11 09:16:53 · 317 阅读 · 0 评论 -
mysql编译安装过程Killed (program cc1plus),内存不足
mysql编译安装过程,执行make命令时报错:c++: internal compiler error: Killed (program cc1plus)Please submit a full bug report,with preprocessed source if appropriate.See http://bugzilla.redhat.com/bugzilla for i...原创 2018-09-03 14:14:21 · 969 阅读 · 1 评论 -
centos7.5安装php5.2.17+mysql8.1.2
1,安装php是报找不到mysql.h但是这个文件在/usr/local/mysql/inlcude下,软链到 /usr/inclue/mysql.h 下即可,2,安装php是报找不到libmysqlclient.so但是这个文件在/usr/local/mysql/lib下,软链到 /usr/lib/libmysqlclient.so 下即可...原创 2018-09-08 12:24:51 · 1391 阅读 · 0 评论