mysql5.7.18字符集配置

故事背景:

  很久很久以前(2017.6.5,文章有其时效性,特别是使用的工具更新换代频发,请记住这个时间,若已经没有价值,一切以工具官方文档为准),下了个mysql版本玩玩,刚好最新是mysql5.7.18,本机是win10、64位系统。大抵步骤分为:

  1、下载:以官网(https://www.mysql.com)为准,download响应系统版本;

  2、初始化:命令行(cmd)进入解压目录bin文件夹(下载下来后应该要解压吧?太久有点遗忘。还有下载下来是没有data这个文件夹以及ini等文件的),这里有两种初始化方式。一种叫不安全初始化,及输入: mysqld --initialize ,初始化使root这个用户没有密码(没密码所以不安全);一种就是所谓的安全初始化,输入: mysqld --initialize-insecure ,生成有密码的root用户,密码可以在生成后出现的日志文件里查看,就在初始化后生成的data文件里

  3、启动服务: 输入: net start mysql (关闭服务: 输入: net stop mysql),如果提示net不是内部命令,那么可能是net没安装,也可能是没配置环境变量 ,检查一下就行

  4、基本上应该是这样,其他的可以查询mysql命令大全去搞。

接下来说说配置字符集的问题。

起因:

  就是昨天,首先对着mysql命令行查看数据太过抽象,所以先下载了个Navicat for mysql(可视化界面),看起来就好多了。如图:

  然后在表中插入数据时会报错“Incorrect string value”,百度了一下说是要将字符集改为utf8mb4,这是因为其他编码存不了一些特殊字符的关系,详情可以百度。

经过:

  修改字符集首先进入mysql: mysql -uroot  (用户登录,因为初始化选了没密码的那种),show variables like ‘char%‘  (查看字符编码),如图:

  可以在命令行里输入例如: set character_set_server=utf8mb4  来改变字符集,但仅限当次有效,重启服务时会恢复默认值。接下来试试其他方法,网上众说纷纭,含糊不清,真假难以分辨 。于是上官网看了一下(官网也很水,没有例子可以参照,就像告诉瞎子白色是白色一样,而我就是那个瞎子),看了文档里有个查看变量的指令:mysqld --verbose --help,查看的变量都可以配置在选项文件里,每次启动服务就会按选项文件里的自动去配置,然后这里出现一句:

      Default options are read from the following files in the given order

  我想应该是选项文件可能存在的地方,也就是说我们新建出的选项文件要以它显示出来的名字命名,放到它显示出的该放的地方。如图:

  新建一个my.ini文件,放在D:\mysql下,刚好就是它显示出来位置的其中一个,如上图。my.ini内容如下:

  基本上就是以这样的形式来配,这里只拿了个罪魁祸首character_set_server,当然关联的字符集配置要统一,否则可能会乱码,可以去百度看看每一个字符集都代表什么意思。

  然后关闭mysql服务,开始配置(输入 mysqld --install):

  1、如果非管理员打开cmd输入 mysqld --install会报如下信息,说是命令被拒绝:

  2、改用管理员打开,说是服务已存在(那么先把它删了就好了):

 

  3、查询mysql服务: sc query mysql(也可以在控制面板-管理工具-服务中找到,或直接搜索服务)

 

  4、删了它:(也可以在控制面板-管理工具-服务中卸载,或直接搜索服务)

  5、当然重装前要停止mysql,即使先行删了它,否则会出现:

  6、我们停了它,这次是在控制面板停掉的,因为之前把它卸了,停掉后就消失不见(命令行: net stop mysql),重新执行,成功的同时启动mysql服务:

  7、重启成功,登上去上看看有没有改动成功:

  8、然后到此就可以了,之后又试了几次,只要改了my.ini后,关闭在重新启动mysql服务,它每次都会按my.ini来改,也就是说以后如果不满意不用从头走一遍,只要改my.ini后重启服务就好了。如图:

  我再改:

  配置就到这了,bye!

时间: 2024-12-28 21:54:21

mysql5.7.18字符集配置的相关文章

mysql5.7.18手动配置

MySQL5.7.18 备份、Mysqldump,mysqlpump,xtrabackup,innobackupex 全量,增量备份,数据导入导出

粗略介绍冷备,热备,温暖,及Mysqldump,mysqlpump,xtrabackup,innobackupex 全量,增量备份 --备份的目的 灾难恢复:意外情况下(如服务器宕机.磁盘损坏等)对损坏的数据进行恢复和还原保证数据不丢失,最小程度地丢失需求改变:因需求改变而需要把数据还原到改变以前测试:测试新功能是否可用 --备份与恢复概述 根据备份的方法可以分为: 1.Hot Backup(热备) 2.Cold Backup(冷备) 3.Warm Backup(温备) Hot Backup是指

CentOS7安装MySQL5.7数据库以及配置

  一.MySQL5.7主要特性: 原生架构支持centos7的Systemd (1.)更好的性能:对于多核的CPU.固态硬盘.锁有着更好的优化.更好的innoDB存储引擎. (2.)更为健壮的复制功能:复制带来了数据完全不丢失的方案,传统金融客户也 可以选择使用MySQL数据库. (3.)新增sys库:以后这会是DBA访问最频繁的库 (4.)更好的优化器:优化器的代码重构的意义将在5.7版本及以后的版本中带来巨大的改进 oracle官方正在解决MySQL之前最大的难题,原生JSON类型的支持

windows10下 MySQL5.7.18版本安装过程及遇到的问题

windows10下 MySQL5.7.18版本安装过程及遇到的问题           mysql-5.7.18-winx64 安装           1.解压 此次将MySQL装在H盘,依个人喜好也可以装在D:/E:/F:盘.           2.在解压目录下创建data空文件夹           3. 将下面信息放到新建文本文件my.ini里                   新建文本文件my.ini,并填入信息: #代码开始                   [Client]

Linux下MySQL5.7.18二进制包安装(无默认配置文件my_default.cnf)

本文出处:http://www.cnblogs.com/wy123/p/6815049.html 最新在学习MySQL,纯新手,对Linux了解的也不多,因为是下载的最新版的MySQL(MySQL5.7.18)二进制包,CentOS7.2下测试安装,方便以后折腾.大概步骤如下,安装删除反复折腾了几遍,按照以下步骤,应该没啥问题了.也没有想象中的复杂,大部分步骤都是参考网上的,照做就是了,出错的话,多尝试,多查资料. 操作系统版本 创建mysql组和用户 下载最新版的MySQL 5.7.18二进制

Redhat6.5下MySQL5.6集群配置完整版

1.准备三台服务器 2.为三台机器分别安装Linux操作系统(Oracle Linux / RHEL 6.5 x86_64bit) 3.分别IP地址 管理节点      192.168.1.110         (负责管理整个集群) SQL节点       192.168.1.111         (负责操作数据库) SQL节点       192.168.1.112         (负责操作数据库) 数据节点      192.168.1.111         (负责存储数据) 数据节

mysql-5.7.18版本(二进制包安装)-自定义安装路径

mysql-5.7.18版本(二进制包安装)-自定义安装路径 安装路径:/application/mysql-5.7.18 1.前期准备 mysql依赖 libaio yum install -y libaio 创建用户mysql,以该用户的身份执行mysql useradd -s /bin/false -M mysql 下载mysql二进制包并解压 cd /tools wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.18

MySQL5.6.30 升级到MySQL5.7.18

本次升级采用:out of place 逻辑升级方式: 基本步骤:①:停止业务,备份现有数据库(mysqldump方式或者物理备份)②:下载MySQL5.7.18软件包,然后安装到别的目录,③:修改配置my.cnf配置文件,指定basedir为新的软件目录④:启动新版本数据库,然后执行mysql_upgrade -uroot -p 升级数据库:⑤:升级完成,重启数据库⑥:检查升级结果:select version(); 升级MySQL检查:①:现有MySQL数据库是否已经备份②:业务是否已经停止

mysql5.7.18的安装与主从复制

CentOS6.7安装mysql5.7.18 1.  解压到/usr/local目录 # tar -zxvf mysql-5.7.18-linux-glibc2.5-i686.tar.gz -C /usr/local 2.  mysql-5.7.18-linux-glibc2.5-i686文件夹重命名为mysql # cd /usr/local # mv mysql-5.7.18-linux-glibc2.5-i686/ mysql 3.  新建mysql用户组和mysql用户 # groupa