CentOS7.x卸载与安装MySQL5.7的操作过程以及编码格式的修改
一、MySQL5.7的卸载
1.1yum方式查看yum是否安装过mysql
cd
yum list installed mysql*
如或显示了列表,说明系统中有MySQL
如上显示,我已经安装了mysql,共有4项
1.2yum卸载mysql
将列表中出现的名字全部卸载掉
yum remove mysql-community-*
rm -rf /var/lib/mysql 删除mysql的lib
rm /etc/my.cnf 删除配置文件my.cnf
可以使用通配符*表示所有
中途会弹出确认对话,选择y即可
1.3、删除其它相关文件
删除相关配置文件
卸载完成后再次用查看
yum list installed mysql*
此时,没有找到相关文件,表示成功卸载
查看相关剩余文件,
whereis mysql
发现还有一个 /usr/share/mysql 没有删除,继续删除该文件
查看其它配置
systemctl list-unit-files | grep mysql
二、安装Mysql5.7
1、下载Mysql文件
国内Mysql5.7镜像地址
http://mirrors.163.com/mysql/Downloads/MySQL-5.7/
我选择的是5.7.26-1.el7
2、安装mysql
解压缩后,我放到了/OPT/MySQL 文件夹下
安装mysql-server服务,只需要安装如下5个软件包即可,使用rpm -ivh进行安装(按顺序安装,后面的服务依赖前面的服务)
如果安装clinet时过程中报错,如下:
原因:这是由于yum安装了旧版本的GPG keys造成的
解决办法:后面加上--force --nodeps
3、查看是否安装成功
#mysql --version
如上图看到5.7.26安装成功
4、初始化并生成初始随机密码
# mysqld --initialize #初始化后会在/var/log/mysqld.log生成随机密码
cat /var/log/mysqld.log 查看随机密码
在最后一行可以看到默认的root用户随机密码,一会登录时使用
5、修改mysql数据库目录的所属用户及其所属组,然后启动mysql数据库
如果不修改组属性,mysql则启动不了,会报错,
6、设置开机自启动
systemctl enable mysqld.service
7、进入MySQL数据库
这里使用的密码就是刚才初始化时生成的初始密码
8、修改root密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
9.修改访问权限
目的:任何主机通过用户root和密码123456连接到mysql服务器
10,修改字符集
由于我们是中文系统,而MYSQL默认的字符为latin1,所以容易出现乱码的情况,因此需要修改字符集的编码方式
进入mysql后会发现
show variables like '%char%';
目前字符集的编码方式如下,为了避免出现乱码需要将字符集统计修改为utf8
进入 /etc/my.cnf文件
增加这几项
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
character_set_server = utf8
collation_server = utf8_general_ci
这里注意 _ 和 - 的区别
重启mysql服务后,进去mysql 查看编码如下
这里注意的是修改字符集只对之后的数据库生效,之前已经存在的数据库无效,所以建议安装完MYSQL后第一时间修改编码方式
RPM安装MySql时的默认路径
数据文件:/var/lib/mysql/
配置文件模板:/usr/share/mysql mysql
客户端工具目录:/usr/bin
日志目录:/var/log/pid
sock文件:在/var/lib/mysql/目录下
一般配置文件会放置在 /etc下
CentOS7.x卸载与安装MySQL5.7的操作过程以及编码格式的修改的更多相关文章
- centos7 二进制安装包安装 mysql5.6
centos7 二进制安装包安装 mysql5.6 一.下载mysql5.6二进制安装包 http://mirrors.sohu.com/mysql/MySQL-5.6/ 如:mysql-5.6.34 ...
- 记录CentOS7.X版本下安装MySQL5.7数据库
记录CentOS7.X版本下安装MySQL5.7数据库 设置rpm下载目录在/opt目录下新建一个目录存放mysql cd /opt sudo mkdir mysql12 下载MySQL的源 wg ...
- CentOS7 实战源码安装mysql5.7.17数据库服务器
CentOS7 实战源码安装mysql5.7.17数据库服务器 简介:实战演练mysql数据库服务器的搭建 mysql简介: mysql是一个开源的关系型数据库管理系统,现在是oracle公司旗下的 ...
- CentOS7下源码安装mysql5.6
目录 准备工作 运行环境 确认你的安装版本 下载mysql 安装mysql 准备安装环境 编译和安装 配置mysql 单实例配置 单实例配置方法 添加防火墙 ...
- CentOS7下使用YUM安装MySQL5.6
(1)检查系统中是否已安装 MySQL. rpm -qa | grep mysql 返回空值的话,就说明没有安装 MySQL . 注意:在新版本的CentOS7中,默认的数据库已更新为了Mariadb ...
- CentOS7 下使用YUM安装 MySQL5.7
于2015年10月19日(美国时间),Oracle公司发布了开源数据库MySQL的最新版本5.7.到现在已有将近3年之久,经过这几年的改进,MySQL5.7性能最高可达前一个版本的3倍,现在官网的最新 ...
- centos7.2环境编译安装mysql5.5.48
一.安装cmake编译工具 跨平台编译器 查看是否已经安装了gcc # rpm -qa | grep gcc # yum install -y gcc-c++ # yum install -y cma ...
- CentOS7下yum方式安装mysql5.6
在Centos7中用MariaDB代替了mysql数据库.所以在新安装MySQL前必须做好对系统的清理工作. 一.清理CentOS7下的MariaDB. [root@localhost ~]#rpm ...
- centos7.5下yum安装mysql-5.6.43
cd ~/ && cat /etc/redhat-release yum list installed |grep mysql #<===查看是否安装mysql,如果已经安装,使 ...
随机推荐
- Angular05 angular架构、搭建angular开发环境、组件必备三要素、angular启动过程
1 angular架构 1.1 组件:是angular应用的基本构建模块,可以理解为一段带有业务逻辑和数据的HTML 1.2 服务:用来封装可重用的业务逻辑 1.3 指令:允许你想HTML元素添加自定 ...
- git配置过程中fatal:拒绝合并无关的历史
首先将远程仓库和本地仓库关联起来: git branch --set-upstream-to=origin/master master 然后使用git pull整合远程仓库和本地仓库, git pul ...
- 使用青花瓷(charles)抓包
官网下载charles: https://www.charlesproxy.com/download/ MAC & Apple 打开青花瓷charles 找到本地IP:青花瓷里面Help-&g ...
- springboot整合elasticSearch客户端
一 ES客户端 ES提供多种不同的客户端: 1.TransportClient ES提供的传统客户端,官方计划8.0版本删除此客户端. 2.RestClient RestClient是官方推荐使用的, ...
- RDP爆破方式攻击防控思路梳理
- CGI 萃取技术 __type_traits
前言 上一篇文章讲了 iterator_traits 的编程技法,非常棒适度弥补了 C++ 语言的不足. STL 只对迭代器加以规范,制定了 iterator_traits 这样的东西. CGI 把这 ...
- Plsql配置后,sql语句可以简写 快速使用
in=INSERT up=UPDATE se=SELECT fr=FROM wh=WHERE or=ORDER BY de=DELETE df=DELETE FROM sf=SELECT * FROM ...
- 「java.util.concurrent并发包」之 ThreadPoolExecutor
一 异步用new Thread? 大写的"low"!! new Thread(new Runnable() { @Override public void run() { // T ...
- Spring系列二:IoC 容器
还君明珠双泪垂,恨不相逢未嫁时. 概述 Spring IoC容器是Spring框架的核心.只需要进行简单的容器配置,就可以将创建对象,使用对象,销毁对象联系在一起,从而管理从创建对象到销毁对象的整个生 ...
- python私有化xx、_xx、__xx、__xx__、xx_的区别
xx:共有变量. _xx:私有化的属性或方法,from xxx import * 时无法导入,子类的对象和子类可以访问. __xx:避免与子类中的属性命名冲突,无法在外部直接访问(名字重整所以访问不到 ...