
MySQL
不脱发的尼古拉斯萧瑟
佛祖保佑,永无bug
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
本地Navicat 连接Centos8 mysql8.0报错1251
项目场景:Centos8 中安装了MySql8.0问题描述在本地用navicat连接mysql的时候报1251 Client does not support authentication protocol requested by server;consider upgrading Mysql client原因分析:MySQL5.0和MySQL8.0加密方式不同,MySQL5.0加密规则是:mysql_native_password,MySQL8.0加密规则是:caching_sha2_pass原创 2022-05-08 13:41:29 · 609 阅读 · 0 评论 -
MySql核心技术
学习目标提示:mysql从基础到熟悉了解,在到使用的过程复习文章目录学习目标前言一、为什么要学习数据库数据库的好处二、数据库的相关概念三、数据库存储数据的特点四、初始MySql1、MySql产品的介绍2、MySql产品的安装3、MySql服务的启动和停止4、MySql服务的登录和退出5、MySql常见命令和语法规范五、DQL语言的学习1、基础查询2、条件查询3、排序查询4、常见函数5、分组函数6、分组查询7、连接查询6、子查询6、分页查询六、DML语言的学习七、DDL语言的学习八、TCL语言的学习九、视原创 2021-11-08 17:59:49 · 1445 阅读 · 0 评论 -
mysql查询某个字段,值为空,重定向
1、问题描述:在mysql查询中,查询某个数据的时候,字段值为空,在数据回显的过程当中报错;2、解决思路:如果查询的某个字段为空,那么进行重定向改变这个字段的值;3、所涉及到的关键字:IFNULL、CONCAT、RIGHT;4、代码示例以及关键字解释:SELECT IFNULL( nickname, CONCAT('用户', RIGHT(phone, 4)) ) nicknameFROM selfs_appuser_teacherWHERE phone = '13146**116原创 2021-06-01 11:29:10 · 669 阅读 · 0 评论 -
解决:navicat出现Table ‘performance_schema.session_variables’ doesn’t exist报错,查询遇到cannot select database
问题描述:navicat连接本地MySQL时出现Table ‘performance_schema.session_variables’ doesn’t exist报错。网上的解决方法是在mysql的bin目录下运行 mysql_upgrade -u root -p --force命令,但是我在输入这个命令之后出现了Error occurred: Cannot select database.报错。解决办法:在mysql安装目录中的my.ini中添加如下代码:show_compatibility_5原创 2021-05-21 17:15:17 · 5490 阅读 · 14 评论 -
mysql优先级匹配查询
一、先决条件1、为了更加符合实际开发需求,我在此把整张表贴过来;2、所用到的关键字LOCATE。CREATE TABLE `appuser_teacher` ( `id` varchar(36) DEFAULT NULL COMMENT '主键ID', `phone` varchar(15) NOT NULL COMMENT '手机号', `headurl` varchar(255) DEFAULT NULL COMMENT '头像URL', `nickname` varchar(255原创 2021-04-09 15:29:02 · 1341 阅读 · 0 评论 -
mysql查询报[Err] 1055 - Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregat
一、错误信息如下:[Err] 1055 - Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'selfsturoom.a.studycontent' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_gro原创 2020-11-03 11:15:35 · 1199 阅读 · 2 评论 -
mysql查询当天当周当月的数据
1、查询当天的数据select * from 表名 where TO_DAYS(时间字段)=TO_DAYS(NOW());2、查询当周的数据select * from 表名 where YEARWEEK(DATE_FORMAT(时间字段,'%Y-%m-%d'))=YEARWEEK(NOW());3、查询当月的数据select * from 表名 where DATE_FORMAT(时间字段,'%Y%m')=DATE_FORMAT(CURDATE(),'%Y%m');4、查询昨天的数据原创 2020-09-12 17:49:39 · 5516 阅读 · 0 评论 -
Navicat操作数据库时候一直显示加载中
一、原因有如下几点:1、表死锁,锁不释放,无论多久都显示正在加载中2、表中的数据量太大造成的3、网络比较慢,卡顿,数据无法传输导致的二、分析结果:大部分的原因都是原因一导致的。三、解决办法如下:在navicat中右击数据库名称选择命令列界面,如下:输入SHOW PROCESSLIST;,显示如下图界面:如果state状态栏带lock字眼的就说明这张表被锁了。如果有被锁的表,那么在命令行输入(kill 后面的id是上图的第一列值):KILL 10166;//后面的数字即时进程的ID原创 2020-08-29 09:46:49 · 5193 阅读 · 0 评论 -
mysql联合查询UNION 和 UNION ALL的适用简介
mysql中的联合查询命令为:UNION和UNION ALL,在此总结做为记录。1、UNION和UNION ALL的作用和语法UNION用户合并两个或者多个SELECT语句的结果集,并且消除表中的任何重复行,UNION内部的SElECT语句必须要求必须拥有相同的列,列也必须拥有相似的数据类型,同时,每条 SELECT 语句中的列的顺序必须相同。UNION语法代码: SELECT staff...原创 2020-01-10 11:38:41 · 666 阅读 · 0 评论 -
mysql之数据库int(10)能输入多少位
首先来说一下int(10)的含义,拆分int(10),如int(M),int代表整数数据,那么括号中的M是代表多少位,我们常用的可能有int(4),int(10)等等,一开始我认为int(4)比int(10)所占的存储空间要小,实际并不是这样的,原来,在int(M)中,M的值跟int(M)的存储没有半毛钱的关系,并且,int(4)、int(10)哪怕是int(100)等等,它们所在磁盘中都是占用...原创 2019-08-21 17:48:29 · 12994 阅读 · 0 评论 -
mysql利用计划实现数据库定时备份
1.打开Navicat Premium选择要备份的数据库,选择最上边一栏【计划】 按钮,点击【新建】如下图所示:2. 在可用任务列表中双击任务,也可添加任务,如下图所示:3. 点击【保存】,输入设置文件名称,然后点击确定,如下图所示:4. 点击【设置计划任务】,弹出数据库备份对话框,如下图所示:5. 切换到计划选项卡,然后点击【新建】,如下图所示:6. 设置备份的频率和...原创 2019-08-08 14:00:59 · 256 阅读 · 0 评论 -
mysql数据导入或者数据传输报Got a packet bigger than‘max_allowed_packet’bytes错误
此问题有两种解决办法,如下:1.打开mysql连接工具命令列界面输入:mysql>set global max_allowed_packet=524288000;修改 #512M如下图:2.修改my.cnf,需重启mysql,在此配置文件最后添加一个参数:max_allowed_packet=256M (根据实际情况调整数值),如果 此参数已经存在,修改参数结果即...原创 2019-07-29 11:16:28 · 309 阅读 · 0 评论