mysql连接串指定编码_MYSQL创建数据库时候直接指定编码和排序规则
安装我 在网上搜索的结果
执行
代码:
sudo gedit /etc/mysql/my.cnf
设置了默认编码为 UTF8
代码:
[client]
port = 3306
socket = /var/run/mysqld/mysqld.sock
#默认字符集为utf8
default-character-set = utf8
代码:
[mysqld]
#
# * Basic Settings
#
# 默认字符集为utf8
default-character-set = utf8
重启MySql
但是我用 执行
代码:
show variables like 'character%';
结果
代码:
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
其中
代码:
| character_set_database | latin1 |
为什么没有变化
而且java无法插入中文 java中已经将中文用utf8转码
在mysql中默认字符集是latin1,
想要设置字符集为uft-8,可以在 my.cnf 文件中添加以下设置:
·[client]
default-character-set=utf8
·[mysqld]
default-character-set=utf8
skip-character-set-client-handshake #此处是忽略客户端的字符集,使用服务器的设置
(skip语句和client中的default选一个)
当然你可以在建立数据库是规定字符集:
create database db_name default character set utf8 callate utf8-general-ci;
也可以在链接数据库前设置:set names 'utf8';
重点在红字上,加了skip-character-set-client-handshake,client里面就不用加default了
show variables like 'characte%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+_________________
笔记
-------------------------------------
http://blog.163.com/wqt_1101
mysql 创建 数据库时指定编码很重要,很多开发者都使用了默认编码,但是我使用的经验来看,制定数据库的编码可以很大程度上避免倒入导出带来的乱码问题。
我们遵循的标准是,数据库,表,字段和页面或文本的编码要统一起来
很多mysql数据库工具(除了phpmyadmin,我偶尔用,功能强速度慢)都不支持创建时指定数据库编码,当然可以改my.ini来解决这个问题,但是需要重新启动mysql,不过用下面的语句会更有效
GBK: create database test2 DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;
UTF8: CREATE DATABASE `test2` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
注意:如果不是通过my.ini配置文件设置的内容,只在当前状态下有效,当重启数据库服务后失效。所以如果想要不出现乱码只有修改my.ini文件,数据库编码可以在创建数据库时候指定UTF8,如下:
|character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8
注意该配置| character_set_server | latin1 无法设置成UTF8
交互时候仍然会出现乱码。
只有当修改my.ini中设置UTF8,才会全部修改成UTF8
-------------------------
mysql设置编码命令
SET character_set_client = utf8;
SET character_set_connection = utf8;
SET character_set_database = utf8;
SET character_set_results = utf8;/*这里要注意很有用*/
SET character_set_server = utf8;
SET collation_connection = utf8_bin;
SET collation_database = utf8_bin;
SET collation_server = utf8_bin;
my.ini中配置默认编码
default-character-set=utf8
连接数据库设置编码
jdbc:mysql://192.168.0.5:3306/test?characterEncoding=utf8
/*****************************************java与mysq编码对应****************************************/
java中的常用编码UTF-8;GBK;GB2312;ISO-8859-1;
对应mysql数据库中的编码utf8;gbk;gb2312;latin1
---------------------------
数据库连接串中指定字符集URL=jdbc:mysql://yourIP/college?user=root&password=yourPassword&useUnicode=true&characterEncoding=gbk
mysql连接串指定编码_MYSQL创建数据库时候直接指定编码和排序规则相关推荐
- 创建MySQL数据库的副本_MySQL创建数据库(CREATE DATABASE语句)
在 MySQL 中,可以使用 CREATE DATABASE 语句创建数据库,语法格式如下: CREATE DATABASE [IF NOT EXISTS] [[DEFAULT] CHARACTER ...
- SQL Server数据库查询区分大小写、全半角——排序规则的应用(转载)
SQL Server数据库查询区分大小写.全半角--排序规则的应用 因为偶然的原因,需要在INNER JOIN联表时,让对应字段进行区分大小写的比较.而默认情况下建立的Sql Server数据库是不区 ...
- mysql创建数据库指定utf 8_MySQL创建数据库时指定编码utf8mb4和添加用户
MySQL创建数据库时指定编码utf8mb4和添加用户 CREATE DATABASE `wordpress` DEFAULT CHARACTER SET utf8 COLLATE utf8_gene ...
- mysql 修改字段编码_mysql修改数据库编码字段编码
//创建数据库并指定编码 create database `test` default character set utf8mb4 collate utf8mb4_unicode_ci //浏览器打印 ...
- windows mysql 创建数据库_MySQL创建数据库
要在MySQL中创建新数据库,使用CREATE DATABASE语句: CREATE DATABASE [IF NOT EXISTS] database_name [CHARACTER SET cha ...
- mysql没有创建数据库的权限设置_mysql 创建数据库,用户并给用户设置权限
mysql创建数据 create database dataBaseName default charset utf8 collate utf8_general_ci; --创建数据库并设置字符集 创 ...
- 查看mysql创建 数据库_Mysql创建数据库和查看数据库
1.create database ;(创建数据库) create database mydb1 =(自定义) [DEFAULT] CHARACTER SET charset_name -- CH ...
- 菜鸟教程mysql创建表_MySQL 创建数据库 | 菜鸟教程
MySQL 创建数据库 使用 mysqladmin 创建数据库 使用普通用户,你可能需要特定的权限来创建或者删除 MySQL 数据库. 所以我们这边使用root用户登录,root用户拥有最高权限,可以 ...
- mysql创建数据库和权限设置_mysql创建数据库和用户以及设置用户与权限
在mysql数据库的使用中,创建数据库无疑是最简单的部分:在mysql命令提示符下,输入如下命令:mysql > create databass dbname;//dbname数据库名称 创建成 ...
最新文章
- (八)java版spring cloud+spring boot 社交电子商务平台-消息总线(Spring Cloud Bus)
- nginx 配置文件
- 如何编写一个Systemd Service(转)
- Hbase 01_初学必知
- BLE-NRF51822教程1-常用概念
- 用 C# 来守护 Python 进程
- linux下的gpio转串口驱动,X-026-KERNEL-Linux gpio driver的移植之gpio range
- 一个基于运气的数据结构,你猜是啥?
- [开源第一波]SmartScript
- Dex Loader] Failed to load D:\adt-bundle-windows-x86_64-20190307\sdk\build-tools\28.0.3\lib\dx.jar
- # 研究杂感 × VOSviewer(第三辑)
- Matlab TreeBagger随机森林回归实例
- 苦心志,劳筋骨,饿体肤,乏其身,乱其所为
- MySql中设置utf8编码方法
- 关于投资与投机、基金
- java让线程空转_详解Java编程中对线程的中断处理
- Android5.1 PIN/PUK flow
- 2023佛山市入户新政细则详解
- 我读 《国富论》 - 亚当 · 斯密 / 论资本利润
- 模板合集TOP50!覆盖8大行业领域,20+业务场景,打包好了直接送
热门文章
- KL-divergence
- Python 多线程抓取网页
- 8年程序员210天没找到工作,小公司老板:降薪5千,爱来不来
- Java 12正式发布,新特性解读!
- 用友ERP服务器的连接
- 《金蝶ERP—K/3标准财务模拟实训(11.X版)》——第1章 金蝶K/3标准财务介绍 1.1 金蝶K/3标准财务系统介绍...
- 一款纯css3实现的响应式导航
- session_start() 对 HTTP_REQUEST扩展/fsockopen函数 的影响
- 如何将SP1集成到Office 2007安装包
- 逻辑判断 java_写 JS 逻辑判断,不要只知道用 if-else 和 switch