如何编译安装mysql中的字符集
发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,本文主要给大家简单讲讲如何编译安装mysql中的字符集,相关专业术语大家可以上网查查或者找一些相关书籍补充一下,这里就不涉猎了,我们就直奔主题吧,希望如何编译安装mysql中的字符集这篇文章可以给大家
千家信息网最后更新 2025年01月20日如何编译安装mysql中的字符集
本文主要给大家简单讲讲如何编译安装mysql中的字符集,相关专业术语大家可以上网查查或者找一些相关书籍补充一下,这里就不涉猎了,我们就直奔主题吧,希望如何编译安装mysql中的字符集这篇文章可以给大家带来一些实际帮助。
1.编译安装的字符集情况
查看字符集的格式mysql> show create table sanlang \G*************************** 1. row *************************** Table: sanlangCreate Table: CREATE TABLE `sanlang` ( `id` int(11) DEFAULT NULL, `name` varchar(10) DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf81 row in set (0.00 sec) mysql>插入数据mysql> insert into sanlang values(22,"刘海笑"); Query OK, 1 row affected (0.00 sec)测试mysql> select * from sanlang; +------+-----------+| id | name |+------+-----------+| 1 | xiaoming || 2 | xiaoli || 3 | tt || 4 | gg || 22 | testdata || 22 | 刘海笑 |+------+-----------+6 rows in set (0.00 sec)mysql>
更改字符集测试(更改字符集以后可以看出id为22的出现乱码):
mysql> set names gbk ;Query OK, 0 rows affected (0.00 sec) mysql> select * from sanlang; +------+----------+| id | name |+------+----------+| 1 | xiaoming || 2 | xiaoli || 3 | tt || 4 | gg || 22 | testdata || 22 | Ц |+------+----------+6 rows in set (0.10 sec) mysql>
2.mysql数据库常见的字符集介绍
3.MYSQL如何选择合适的字符集
1.如果处理各种各样的文字,发布到不同一眼国家地区,mysql来说UTF-8(每个汉字三个自己),如果应用需要处理英文,仅有少量汉字utf8更好2.如果只需要支持中文,并且数据量很大,性能要求也很高,可选GBK(订场,每个汉字占用双字节,英文也占双字节),如需大量的运算,比较排序等,定长字符集,更快,性能高3.处理移动互联网业务,可能需要使用utf8MP4的字符集4.老师建议:没有特别的需求,就选择utf8的字符集
4.查看系统字符集
mysql> show character set ;mysql> show variables like 'character_set%';+--------------------------+-------------------------------------------+| 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 | /application/mysql-5.5.49/share/charsets/ |+--------------------------+-------------------------------------------+8 rows in set (0.00 sec)mysql>
5.set names 控制客户端的字符集
可以看出set names只是控制了客户端的字符集
mysql> show variables like 'character_set%';+--------------------------+-------------------------------------------+| 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 | /application/mysql-5.5.49/share/charsets/ |+--------------------------+-------------------------------------------+8 rows in set (0.00 sec) mysql> set name gbk;mysql> show variables like 'character_set%';+--------------------------+-------------------------------------------+| Variable_name | Value |+--------------------------+-------------------------------------------+| character_set_client | gbk || character_set_connection | gbk || character_set_database | utf8 || character_set_filesystem | binary || character_set_results | gbk || character_set_server | utf8 || character_set_system | utf8 || character_sets_dir | /application/mysql-5.5.49/share/charsets/ |+--------------------------+-------------------------------------------+8 rows in set (0.00 sec)
6.客户端字符集统一
1.客户端字符集统一法①set names utf8法②下面三个命令代替set names(其实就是更改了client的字符集)SET character_set_client = gbkSET character_set_connection = gbkSET character_set_results = gbk法③登录的时候指定字符集[root@oldboy ~]# mysql -uroot -poldboy123 -S /data/3306/mysql.sock --default-character-set=utf8;法④通过修改my.cnf 实现修改mysl客户端的字符集,并且永久生效[client]default-character-set = utf8 #不需要重启服务,退出登录就生效备注:多实例修改客户端 字符集要修改/etc/my.cnf
7.更改mysql服务端的字符集
按照要求修改my.cnf参数 [mysqld] default-character-set = utf8 #适合5.1以及以前的版本 character-set-server = utf8 #适合5.5
8.创建库的时候指定字符集
mysql> create database oldboy CHARACTER SET gbk COLLATE gbk_chinese_ci; 说明:建表的时候指定字符集,如果不指定字符集,那么表和库的字符一样
9.程序也要统一
程序和库表的字符集统一
10.系统的字符集
[root@oldboy ~]# cat /etc/sysconfig/i18nLANG="zh_CN.UTF-8"
11.数据库中执行sql语句的方法
a.sql语句在windows客户端改成utf8没有签名的格式b.导入数据指定字符集的格式mysql -uroot -poldboy123 --default-character-set=utf812.更改库字符集的思路(库的表里面已经有数据了)
说明:有数据的情况下,对新数据生效,对老数据库不生效更改库字符集的思想1.数据库不要更新,导出所有的数据2.把导出的数据进行字符集的替换(替换表和库)3.修改my.cnf,更改mysql客户端的服务端的字符集,重启生效4.导入更改过的字符集的数据,包括表结构语句,提供服务5.ssh客户端,以及程序更改为对应的字符集如何编译安装mysql中的字符集就先给大家讲到这里,对于其它相关问题大家想要了解的可以持续关注我们的行业资讯。我们的板块内容每天都会捕捉一些行业新闻及专业知识分享给大家的。
字符
字符集
数据
客户
客户端
端的
数据库
服务
编译
系统
统一
文件
时候
格式
程序
语句
汉字
处理
三个
专业
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
北京市2016气象数据库
上海有机数据库
一个程序中需要连接几个数据库
sql数据库建表心得体会
使用什么语言删除数据库
戴尔710服务器安装ghost
非商用网络技术问题
通信软件开发工程师 面经
mac搭建文件存储服务器
数据库与应用接口怎么画
计算机网络技术是干吗的
计算机网络技术应用ppt课件
安装配置与管理DNS服务器
网络安全干部职工要求
数据库拓展存储
中国拥有数据库的互联网公司
七绝网络安全
三级c 数据库技术
新乡住宿软件开发
余姚软件开发收入
虚拟机中找不到服务器
服务器打开网页卡顿
运营商需要给软件开发商钱吗
服务器正在运行中是啥意思
系统换数据库
服务器上如何打开9001端口
上海常规软件开发定制哪个好
linux同步服务器时间
delp开发数据库用什么组件
最近lol服务器卡