常见问题--MySQL

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了常见问题--MySQL相关的知识,希望对你有一定的参考价值。

group by相关
“only_full_group_by” SQL_MODE是默认开启的,开启后只能获取受group by影响的字段,而对于非group by的信息需要通过any_value(name)函数获取(mysql 5.7之后)

ibatis annotations 注解方式返回刚插入的自增长主键ID的值
  @Insert("insert into Product(title, image, price, detail, summary, seller) values(#{title},#{image},#{price},#{detail},#{summary},#{seller})")
  @Options(useGeneratedKeys=true, keyProperty="id")//添加该行,product中的id将被自动添加public Integer insertProduct(Product product);

乱码问题

tomcat造成的乱码,在server.xml中设置:

<Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" useBodyEncodingForURI="true" />


连接数据库的URL中加入编码格式,如:

jdbc.url= jdbc:mysql://127.0.0.1:3306/electronic-business?useUnicode=true&characterEncoding=UTF-8

数据库设置:

mysql> SET character_set_client=‘gbk‘;

mysql> SET character_set_connection=‘gbk‘

mysql> SET character_set_results=‘gbk‘

mysql> SET character_set_database=‘gbk‘;

mysql> SET character_set_server=‘gbk‘

mysql> SET character_set_results=‘gbk‘

改成gbk或者utf-8都可以

常用相关命令:
查看数据库编码格式
show variables like ‘character_set_%‘;
查看数据库中的表的创建
show create table tablename;
设置数据库编码格式
set names= ‘gbk‘;
或者在mysql命令行下输入 \s查看mysql的字符集的方式

blob格式引起的乱码:
blob读出来的是ISO-8859-1编码,你需要转换为GBK编码才可以
Java code
String blob =...
blob = new String(blob.getBytes("iso-885901"),"GBK");
或者
存取大文本的时候用mediumtext而不用blob

CentOS 7 通过yum安装MySQL 5.7
1.下载YUM库
shell > wget http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
2.安装YUM库
shell > yum localinstall -y mysql57-community-release-el7-7.noarch.rpm
3.安装数据库
shell > yum install -y mysql-community-server
4.启动MySQL服务
shell > systemctl start mysqld.service








以上是关于常见问题--MySQL的主要内容,如果未能解决你的问题,请参考以下文章

linux中怎么查看mysql数据库版本

使用 json rereiver php mysql 在片段中填充列表视图

连接MySQL出现错误:ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)(代码片段

关于mysql驱动版本报错解决,Cause: com.mysql.jdbc.exceptions.jdbc4Unknown system variable ‘query_cache_size(代码片段

修改MySQL密码报错“ERROR 1819 (HY000): Your password does not satisfy the current policy requirements“(代码片段

mysql查看版本的四种方法