业务开发(一)—— MySQL
0x01、SQL异常Incorrect string value
java.sql.SQLException: Incorrect string value: '\xE6\x88\x91\xE7\x9A\x84...' for column 'groupName'
修改数据库表的编码以及表中字段的编码,改为utf-8
0x02、mysql,获取当前时间几小时或几天之前的时间
select date_sub(now(), interval 1 hour);
0x03、Data truncation: Truncated incorrect DOUBLE value
com.mysql.jdbc.MysqlDataTruncation: Data truncation: Truncated incorrect DOUBLE value:
update user set pay_password = #{payPassword},salt = #{salt} where id = #{id}
update设置的值之间用,而不是and
0x04、数据库满了或者连接拒绝
重启本地数据库服务器或者找方法解决数据库满了的问题
0x05、没有合适的驱动
java.sql.SQLException: No suitable driver found for jdbc:mysql:
0x06、数据库查询缓慢
之前修改过一个表,它原先的思路是先在一个表中选出20条记录,然后再与多个表进行联表查询,而我改完之后呢,是将第一个表中所有记录都和多个表联表查询完之后,再选出20条记录,最后因为第一个表有上万条数据,查询一次都要两分多钟。
所以联表查询时,一定要缩小表的范围,让小表来联大表。
0x07、Column 'rule_id' in field list is ambiguous
例如两个表中都有rule_id这个字段,你指定rule_id的时候,必须指明a表还是表rule_id
0x08、权限问题
显示当前用户权限
mysql> show grants;
给某个用户权限
grant select,insert,update,delete,create,drop on `management`.* to 'xxxx'@'%';
0x09、使用show grants命令显示有创建修改表的权限,而在navcat上报 ERROR1005、1060错误
原因是/mnt/data/mysql文件夹的权限没有设置。
0x10、1040 Too many connections
find / -name my.cnf 或 cd /etc/my.cnf
将最大连接数增大,由500改为5000然后重启mysql,解决问题
max_connections=500
service mysqld restart
0x11、在navcat上修改表的id为自增,但使用插入语句还是会提示id没有默认值
field id doesnt have a default value
解决方法:在navcat上改变了表的字段或者结构,需要点击保存,否则不能生效。
0x12、SQL语句错误,提示:"#1241 - Operand should contain 1 column(s)"错误
select a.id from
(
select * from user where nickname is not null and head_image_url is not null
)a
join weixin_user b
on a.id = b.user_id
where a.id
not in(
select * from coupon_record a
join coupon b
on a.coupon_id = b.id
where send_type = 2)
将select * from coupon_record a中的*改为id
0x13、Got error 28 from storage engine
数据库出现这个提示,表示mysql的磁盘满了。运行tomcat时可能会出现,控制台日志卡在一个mysql查询记录上。
解决方法就是清理磁盘。
0x14、Every derived table must have its own alias
select * from (
(
select rule_id,rule_name,owner_id,category_id,average_score,downloads from rule_details
where owner_id = 'xxxxx'
order by RAND() desc limit 12)
union
(
select rule_id,rule_name,owner_id,category_id,average_score,downloads from rule_details
where category_id = (select category_id from rule_details where rule_id = 'xxxxx')
and rule_id <> 'xxxxxx'
order by RAND() desc limit 12)
每个派生出来的表都必须有一个自己的别名
改成
(
select rule_id,rule_name,owner_id,category_id,average_score,downloads from rule_details
where owner_id = 'xxxxx'
order by RAND() desc limit 12
)
union
(
select rule_id,rule_name,owner_id,category_id,average_score,downloads from rule_details
where category_id = (select category_id from rule_details where rule_id = 'xxxxx')
and rule_id <> 'xxxxxx'
order by RAND() desc limit 12
)
0x15、显示没有数据库的驱动,启动数据库服务
重启mysql服务
/etc/init.d/mysqld stop
/etc/init.d/mysqld start
0x16、按权重排序
1.select * from tbl_actor order by (follower_count+Recommend_weight)*weight_ratio desc limit 3;
2.order by (follower_count+Recommend_weight)*weight_ratio
3.可用于根据权值,做推荐列表用。
1、同样的登录代码,我这边可以正常登录,同事那边不断重定向,无法登陆成功
原因是,shiro的账号权限设置,如果账号未激活,会循环重定向。
<mvc:interceptors>
<mvc:interceptor>
<mvc:exclude-mapping path="/Manage/"/>
</mvc:interceptor>
</mvc:interceptors>
2、Controller层以JSON的形式返回一个List对象,如果这个对象是null,前端则接收不到。
解决方法
return list == null ? new ArrayList<Object>() : list;
9 You can't perform any operations on this connection. It has been automatically closed by Proxool for some reason
跟数据库服务器的配置有关,一般重启几次就好,尤其是如果一个函数有加事务,你在调试的过程中很容易出现这个报错。
10 修改xml文件,不管怎么修改,在服务器上得到的结果都是不对的
原因很可能是所做的修改没有生效,在服务器上修改xml文件,必须重启才能生效。
14 发送验证码不能发送成功,返回100001,(云之讯)
解决方法:根据已有的信息去查100001所代表的意思,http://docs.ucpaas.com/doku.php?id=rest_error,
原因是账户的余额不足,所以不能发送短信。
15 控制台提示找不到类
1、maven install 一下
2、很可能是配置文件的路径不对,比如说xml中类的路径。
业务开发(一)—— MySQL的更多相关文章
- 云计算+SaaS+业务开发平台=JSAAS云平台
我关注Google的代码托管.Open API,我也关注Oracle会把MYSQL怎么样云数据库化,我也虚拟化技术多实例化独立的数据库,我也关注facebook的平台插件应用架构,我也关注salesf ...
- 带货直播源码开发采用MySQL有什么优越性
MySQL是世界上最流行的开源关系数据库,带货直播源码使用MySQL,可实现分钟级别的数据库部署和弹性扩展,不仅经济实惠,而且稳定可靠,易于运维.云数据库 MySQL 提供备份恢复.监控.容灾.快速扩 ...
- SpringCloud Alibaba实战(5:子模块基本业务开发)
源码地址:https://gitee.com/fighter3/eshop-project.git 持续更新中-- 在上一节里,我们搭建了一个微服务项目的整体架构,并进行了版本控制. 接下来我们进一步 ...
- 使用ThinkPHP开发中MySQL性能优化的最佳21条经验
使用ThinkPHP开发中MySQL性能优化的最佳21条经验讲解,目前,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更 ...
- python 全栈开发,Day117(popup,Model类的继承,crm业务开发)
昨日内容回顾 第一部分:权限相关 1. 权限基本流程 用户登录成功后获取权限信息,将[权限和菜单]信息写入到session. 以后用户在来访问,在中间件中进行权限校验. 为了提升用户体验友好度,在后台 ...
- 百度王一男: DevOps 的前提是拆掉业务-开发-测试-运维中间的三面墙
这是一个创建于 375 天前的主题,其中的信息可能已经有所发展或是发生改变. 由数人云.优维科技.中生代社区联合发起的 系列 Meetup < DevOps&SRE 超越传统运维之道&g ...
- 复杂业务下向Mysql导入30万条数据代码优化的踩坑记录
从毕业到现在第一次接触到超过30万条数据导入MySQL的场景(有点low),就是在顺丰公司接入我司EMM产品时需要将AD中的员工数据导入MySQL中,因此楼主负责的模块connector就派上了用场. ...
- 一个让业务开发效率提高10倍的golang库
一个让业务开发效率提高10倍的golang库 此文除了是标题党,没有什么其他问题. 这篇文章推荐一个库,https://github.com/jianfengye/collection. 这个库是我在 ...
- 使用golang对海康sdk进行业务开发
目录 准备工作 开发环境信息 改写HCNetSDK.h头文件 开发过程 基本数据类型转换 业务开发 参考 项目最近需要改造升级:操作海康摄像头(包括登录,拍照,录像)等基本功能.经过一段时间研究后,发 ...
- 设计模式之美学习(九):业务开发常用的基于贫血模型的MVC架构违背OOP吗?
我们都知道,很多业务系统都是基于 MVC 三层架构来开发的.实际上,更确切点讲,这是一种基于贫血模型的 MVC 三层架构开发模式. 虽然这种开发模式已经成为标准的 Web 项目的开发模式,但它却违反了 ...
随机推荐
- ModelAndView返回json对象的方法
这是在spring4之后. @RequestMapping(value = "/returnjson") public ModelAndView getfsd(){ ModelAn ...
- jquery1.6中的.prop()和.attr()异同
jquery jQueryHTML5JavaScript浏览器ITeye 最近在iteye的新闻中看到jQuery已经更新到了1.6.1.和之前版本的最大变化是增加了.prop方法.但是.prop( ...
- 小程序 mpvue自定义底部导航栏
1.在compontents新建文件放入 <template> <section class="tabBar-wrap"> <article clas ...
- Android开发者的Anko使用指南(三)之资源
添加依赖 dependencies { compile "org.jetbrains.anko:anko-commons:$anko_version" } Color 0xff00 ...
- Settings 参数记录
DOWNLOAD_FAIL_ON_DATALOSS : 参数:TRUE.FALSE 如果设置为 True : scrapy.Request 有一个 errback 参数, 当 Request 请求出错 ...
- Python之旅Day9 进程&线程
进程 线程 多进程 多线程
- .net反混淆脱壳工具de4dot的使用
de4dot是一个开源的.net反混淆脱壳工具,是用C#编写的,介绍一下它的使用方法 首先 pushd 到de4dot.exe所在文件夹,然后调用 de4dot.exe 路径+dll名称 如果显示: ...
- 【阿里聚安全·安全周刊】苹果证实 iOS 源代码泄露|英国黑客赢下官司
本周的七个关键词:iOS 源代码泄露 丨 阿里软件供应链安全大赛 丨 个人数据安全 丨 Android P 丨 黑客赢下官司 丨 备忘录泄露美国安全局机密 丨 机器学习系统 -1 ...
- 【腾讯Bugly干货分享】那些年,我们一起写过的“单例模式”
题记 度娘上对设计模式(Design pattern)的定义是:"一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结."它由著名的"四人帮",又称 ...
- Dubbo 源码分析 - 服务引用
1. 简介 在上一篇文章中,我详细的分析了服务导出的原理.本篇文章我们趁热打铁,继续分析服务引用的原理.在 Dubbo 中,我们可以通过两种方式引用远程服务.第一种是使用服务直联的方式引用服务,第二种 ...