MySQL、MariaDB修改默认字符集
修改2017.4.9:
最近在使用MariaDB,遇到了同样的问题:中文乱码。因为mariadb他有好几个ini文件,但是可以根据自己开发需要创建一个my.ini,然后我试着去修改mariadb安装目录下的ini文件,死活不生效。然后我在C盘中搜索my.ini发现有一个。然后我就修改了,然后就可以啦
现在我自学到了SQL语句,发现在没有选择字符集时不能存入中文,然后今天看视屏,发现在自己的默认字符集是latin1,
这是什么鬼,然后自己上网查了,发现当初安装没设置就默认这个字符集,哦忘了我的MySQL是解压版,原因是安装版一直安装不上
然后我就开始百度:怎么样修改默认字符集,终于找到一篇博文,就是下面这篇,其中我提取了有用得精华,当然最下面我也会给出
那篇博文的URL;
首先你要查看自己的默认字符集:
查看语句是:show variables like 'character_set%';
然后修改语句是:SET character_set_server = utf8;
SET character_set_database = utf8;
SET character_set_connection = utf8;我就不一一列出语句,就是后面要修改什么就写什么;
这里只是单次修改,意思就是当你退出后再次进入还是会还原为原来的默认字符集latin1;
下面是设置永久的:
SET GLOBAL character_set_client = utf8; SET GLOBAL character_set_connection = utf8; SET GLOBAL character_set_database = utf8; SET GLOBAL character_set_results = utf8; SET GLOBAL character_set_server = utf8;
修改前:
修改后:
上面的方法是针对解压版和安装版;本人测试发现在我自己的电脑都不可以,最后我只能修改配置文件,其实修改配置文件并没有那么可怕,开始我是不想去修改配置文件,但是实在没办法,才修改了,发现其实修改配置文件很简单,而且一劳永逸,下面是我的配置文件,注意:我的是解压版的MySQL,安装版就别模仿了;
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.
[mysql]
default-character-set=utf8
[mysqld]
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
# These are commonly set, remove the # and set as required.
# basedir =D:\mysql-5.6.24-win32
# datadir =D:\mysql-5.6.24-win32\data
# port =3306
# server_id = .....
character-set-server = utf8
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
注意:
# basedir =D:\mysql-5.6.24-win32
# datadir =D:\mysql-5.6.24-win32\data
这两处是你们自己MySQL安装的路径,改成自己的;
我觉得数据库还是要选择utf8,因为方便将来迁移,而且不容易乱码吧,但是utf8也有个缺点,就是不能按中文拼音排序,就是校对规则比较麻烦,好了学习去了,时间很紧迫,切莫再任命的时候任性,要不会很惨。。。
这是我看到的那篇关于默认字符集的博文,对我有帮助的呢:http://imysql.cn/taxonomy/term/24
MySQL、MariaDB修改默认字符集的更多相关文章
- MariaDB修改默认字符集
MariaDB修改默认字符集,以及创建数据库授权 1 . 修改server默认字符集utf8 [root@aws my.cnf.d]# vim /etc/my.cnf.d/server.cnf [my ...
- MySQL修改默认字符集
今天朋友在做某个程序项目时,需要修改MySQL修改默认字符集,搞不好找我帮忙.百度了试了好几篇博文中的方法,最后终于成功了.但是感觉那些博文思路有点乱,所以自己总结下,希望可以帮到遇到同样问题的人. ...
- MySQL之修改默认引擎和字符集
一.数据库引擎 1.1 查看数据库引擎 mysql> show engines; +--------------------+---------+------------------------ ...
- Linux下修改默认字符集--->解决Linux下Java程序种中文文件夹file.isDirectory()判断失败的问题
一.问题描述: 一个项目中为了生成树状目录,调用了file.listFiles()方法,然后利用file.isDirectory()方法判断是否为目录,该程序在windows下运行无问题,在Linux ...
- sybase修改默认字符集为cp936
原文地址:http://blog.sina.com.cn/s/blog_4d6854860100xn3f.html 报错信息:2402 error converting characters into ...
- mysql 修改默认字符集为utf8
MySQL 5.5, all you need is: [mysqld] character_set_client=utf8 character_set_server=utf8 collation_s ...
- tomcat 修改默认字符集
找到connector节点,插入 disableUploadTimeout="true" useBodyEncodingForURI="true" URIEnc ...
- mysql 更改默认字符集
mysql 默认字符集概述 首先,MySQL的字符集问题主要是两个概念: haracter Sets Collations 前者是字符内容及编码,后者是对前者进行比较操作的一些规则.这两个参数集可以在 ...
- 远程连接MySQL(MariaDB)数据库
网络环境: MySQL(MariaDB)服务器的操作系统为 CentOS 7 MySQL(MariaDB)服务器IP:172.16.230.15 客户端操作系统为 Windows 2008 R2 客户 ...
随机推荐
- 关于mysql存储过程中传decimal值会自动四舍五入的这个坑
容我说几句题外话:我的工作日常是用微软系的,SQL SERVICE 存储过程很强大,我也很习惯很喜欢用存储过程.和MySQL结缘,是在五年前,因为一些原因,公司要求用开源免费的数据库.很多时候,用my ...
- DataTable调整顺序
DataTable中手动调整列的顺序 DataTable中手动调整列的顺序(列序,reorder,Rearrange)DataTable dt = new DataTable(); dt.Column ...
- java操作docker示例(docker-java)
1.首先要修改docker服务器的 /usr/lib/systemd/system/docker.service,加入紫色框的配置 2.下载docker-java 的github源码 git clon ...
- jtag、在线仿真器
指令集模拟器 1.部分集成开发环境提供了指令集模拟器,可方便用户在PC机上完成一部分简单的调试工作,但是由于指令集模拟器与真实的硬件环境相差很大,因此即使用户使用指令集模拟器调试通过的程序也有可能无法 ...
- 用mplayer从视频中按周期提取帧
使用方法:extract file time step folder time 设置时间长度 step 设置周期 均以秒(s)为单位 贡献:1. 从视频文件中周期性提取图片:2. Windows下批处 ...
- java holdsLock()方法检测一个线程是否拥有锁
http://blog.csdn.net/w410589502/article/details/54949506 java.lang.Thread中有一个方法叫holdsLock(),它返回true如 ...
- 12 week work
调用一个地图API <html> <head> <meta http-equiv="Content-Type" content="text/ ...
- javaWeb中MVC的编程思想示例
没有学习MVC之前我只写了一个Servlet类(Note_List.java),分层之后,我将这个类分成了5个类(NoteDao.java,,NoteDaoImpl.java,,NoteService ...
- angular-repeat
ng-repeat="name in 变量名字 track by $index" 一个数组的时候ng-repeat="name in 变量名字" {{x.nam ...
- win7 docker Toolbox 启动Docker Quickstart Terminal 失败!
解决办法: 在windows下安装docker Toolbox 启动Docker Quickstart Terminal 失败! 主要是用如下文件启动,临时解决,或设置环境变量