![](https://img-blog.csdnimg.cn/20190918140037908.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据库 > mysql
mysql
小猪快点跑
这个作者很懒,什么都没留下…
展开
-
mysql 慢查询
开启慢查询日志原创 2024-05-23 17:15:27 · 187 阅读 · 1 评论 -
空间索引-点在线上
空间索引,点在线上原创 2022-11-09 23:40:35 · 316 阅读 · 0 评论 -
ip范围和cidr相互转换
根据ip范围计算cidr原创 2022-09-09 03:04:38 · 1888 阅读 · 0 评论 -
mysql 并发问题
1、查看并发连接数show processlist; -- 正在执行线程的列表show global status like 'Threads%'; -- 正在执行的线程的数量 Threads_connectedshowglobal status like '%connections%'; -- 查看历史最大连接数show global status like '%Max_used_connections%'; -- 查看历史最大连接数及其发生时间 Max_used_connections ..原创 2022-01-20 16:25:14 · 600 阅读 · 0 评论 -
Mysql 按逗号拆分
1、建测试表create table table_to_split ( `id` int unsigned auto_increment primary key, `name_list` VARCHAR(64));2、插入测试数据insert into table_to_split (id, name_list) values (1, 'name01,name02'), (2, 'name03,name04,name05');3、查询select * fro...原创 2021-12-22 13:02:13 · 1725 阅读 · 0 评论 -
mysql 备份表
1、备份mysqldump -u xxx -p xxx -h 127.0.0.1 -P 6379 dbName tbName> tbName.sql2、脚本#!/bin/bashdatetime=$(date "+%Y%m%d_%H%M%S")echo ${datetime}user=rootpass=roothost=127.0.0.1port=6379db=dbNamemysqldump -u ${user} -p${pass} -h ${hos原创 2021-12-01 16:35:10 · 843 阅读 · 0 评论 -
mysql 回表和索引覆盖
一、什么是回表查询这先要从InnoDB的索引实现说起,InnoDB有两大类索引: 聚集索引(clustered index) 普通索引(secondary index) InnoDB聚集索引和普通索引有什么差异?InnoDB聚集索引的叶子节点存储行记录,因此, InnoDB必须要有,且只有一个聚集索引:(1)如果表定义了PK,则PK就是聚集索引;(2)如果表没有定义PK,则第一个not NULL unique列是聚集索引;(3)否则,InnoDB会创建一个隐藏的ro转载 2021-10-18 21:29:00 · 99 阅读 · 0 评论 -
mysql 分组查询
一、分组topk(1)建测试表-- 员工表create table member ( `id` INT UNSIGNED NOT NULL auto_increment PRIMARY KEY, `mgr_id` INT UNSIGNED NOT NULL DEFAULT 0, `num` INT UNSIGNED NOT NULL DEFAULT 0)ENGINE=INNODB;INSERT INTO member (mgr_id, num) VALUES(1...原创 2021-10-17 19:24:13 · 214 阅读 · 0 评论 -
msyql 复杂语句
一、复杂查询1、子查询 独立子查询,相关子查询。 子查询出现位置:select-column子查询(独立/相关),from-table子查询(独立),where-key子查询(独立/相关),where-value子查询(独立/相关)2、关联查询 inner-join、left-join、right-join、full-join 多表查询3、过滤 条件过滤 where 后过滤器 having(必须是se...原创 2021-10-17 16:14:41 · 272 阅读 · 0 评论 -
mysql 插入重复
1、重复条件 字段为主键、唯一键2、重复处理方式 重复时不插入(ignore)、重复时删除重建(replace into)、重复时更新(on duplicate key update)3、应用场合 重复时更新:存在更新,不存在插入...原创 2021-10-14 01:58:14 · 1340 阅读 · 0 评论 -
mysql wherein 数组过大
1、加索引 对要查询的字段加索引,但是要注意存在联合查询的情况;因此要考虑是加单列索引还是多列的复合索引。2、join 使用关联查询,避免出现wherein。3、使用 between 分块,利用 between 提高效率。前提是要查询的数组内的值具有连续性。 ...原创 2021-10-07 12:23:33 · 1029 阅读 · 0 评论 -
Mysql Spatial 索引
1、SRID 坐标系统,决定了坐标点的类型、坐标点范围大小、空间函数如何被使用;2、创建空间索引(1)创建空间索引时,字段的 SRID 应该被显示指定,否则索引仍然会被创建,但无法使用索引;(2)建多列空间索引时,这些列应该使用相同的 SRID,否则无法使用联合索引;...原创 2021-08-01 14:10:06 · 2498 阅读 · 0 评论 -
Mysql 查看 数据库/表 磁盘占用
1、查看 - 所有数据库的磁盘占用select TABLE_SCHEMA, concat(truncate(sum(data_length)/1024/1024,2),' MB') as data_size,concat(truncate(sum(index_length)/1024/1024,2),'MB') as index_sizefrom information_schema.tablesgroup by TABLE_SCHEMAORDER BY data_size desc;原创 2021-01-20 20:29:06 · 2545 阅读 · 0 评论 -
Mysql 设置 sql 模式 sql_mode
1、查询 sql 模式select @@GLOBAL.sql_mode或select @@SESSION.sql_mode2、设置 sql模式(1)通过命令设置SET GLOBAL sql_mode = 'modes...';或SET SESSION sql_mode = 'modes...';SET GLOBAL sql_mode = 'ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DA..转载 2021-01-20 20:20:34 · 252 阅读 · 0 评论 -
laravel 数据库语法
1、limit 功能:可以用于分页;查询第几个; 例题:查找入职员工时间排名倒数第三的员工所有信息,为了减轻入门难度,目前所有的数据里员工入职的日期都不是同一天。limit 0, 1 # 跟一个参数或者两个参数,第一个参数是偏移量,从0开始,第二个参数是跟的条数User::offset(0)->limit(1)->get();limit 20, 10 User::offset(20)->limit(10)->get();SELECT ...原创 2021-01-12 09:44:22 · 155 阅读 · 0 评论 -
MySQL 允许远程连接
1、远程连接 mysql 报错 ERROR 1130 (HY000): Host '192.168.1.111' is not allowed to connect to this MySQL server2、改表法。 默认不允许从远程登陆,只能在 localhost。更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从 "localhost" 改称 "%"。mysql -u root -p123use mysql;update user...原创 2021-01-03 21:06:20 · 132 阅读 · 0 评论 -
/var/run 目录
一、mysql 5.7 重启失败问题 mysql 5.7 每次重启后无法启动,需要建立 /var/run/mysqld 目录并赋权 mysql 用户来解决;原因是 /var/run/ 目录的文件在内存中,mysqld.pid 文件保存在 /var/run 目录下,每次重启前被清空,从而导致无法启动 mysql。(1)修改 mysqld 配置文件vim /etc/init.d/mysqld#pid-file=/var/run/mysqld/mysqld.pidpid-file=...原创 2020-12-28 13:15:35 · 969 阅读 · 0 评论 -
Laravel 事务:封装自己的 incrementGetValue 方法
一、mysql 8.0 的隔离级别 默认隔离级别为 repeated-read,可重复读,对读写都加锁。原创 2020-12-05 17:50:52 · 399 阅读 · 2 评论 -
Laravel 查询 Mysql 表结构:Undefined property: stdClass::$column_name when generating a model
问题描述 当使用 getRealColumn 时,报处出该错误Undefined property: stdClass::$column_name when generating a model。 参考https://github.com/laravel/framework/issues/20190 解决方法: Laravel 的 MySqlProcessor假定从 MySQL 中获得的column_name是小写的。 ...翻译 2020-12-02 12:58:05 · 1119 阅读 · 0 评论 -
Mysql 设置默认 date、datetime
1、设置默认 date、datetime 为当天CREATE TABLE `report` ( `id` int unsigned NOT NULL AUTO_INCREMENT COMMENT '自增主键', `report_date` date DEFAULT CURRENT_DATE COMMENT '上报时间', `created_at` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `updated原创 2020-12-02 12:47:13 · 2650 阅读 · 0 评论 -
mysql 切换主键
1、创建 [person] 表CREATE TABLE person ( id INT NOT NULL, name VARCHAR(32) NOT NULL, PRIMARY KEY (name)) ENGINE = innoDB DEFAULT CHARSET = utf8;2、切换主键(1)先删除主键ALTER TABLE person DROP PRIMARY KEY;(2)再增加主键ALTER TABLE person ADD PRIMA原创 2020-08-22 15:07:57 · 1128 阅读 · 0 评论 -
mysql 常用命令
1、查版本mysql --version2、登录mysql -u [user] -p [password] #mysql -u root -p # 登录 root 账户3、查库show databases;4、选库use [dbname];use mysql; # 选择一个名为 mysql 的库5、查表...原创 2020-08-06 00:37:01 · 150 阅读 · 0 评论