CentOS 6.7安装MySQL 8.0.11

CentOS6.7安装MySQL8.0.11

注:我经历了一天的摸索总结了这次centos6版本安装mysql8版本遇到的各种问题(centos 7版本类似)

第一步:下载mysql安装包

下载之前一定要确定自己的centos的版本,一定要查清楚,一般centos开机的时候会显示自己的centos版本,还可以使用uname -a

uname -a

我的是centos6.7,32位
我安装的centos版本信息
首先说一下i686和i386是32位的操作系统一会下载安装包的时候看清楚。
接下来我们要下载mysql安装包 linux 6版本32位的,由于官网下载特别慢,我这里给大家推荐几个国内的镜像网站
souhu镜像:http://mirrors.sohu.com/mysql/MySQL-8.0/
中科大镜像:http://mirrors.ustc.edu.cn/mysql-ftp/Downloads
中科大的下载快,但是失败率特别高,souhu的下载200多K,但是成功率很高,推荐使用souhu
一定要注意支持的操作系统版本号和32还是64位
如果你的linux操作系统是64 位的下载以下版本:
centos6下载上面的,centos7下载下面的

第二步:把安装包上传到linux上

有很多种方式,
第一种:
我用的是lrzsz上传和下载工具,使用这种工具的前提是你必须使用SecureCRT操作linux系统
我们可以使用yum安装方式安装

yum install lrzsz

注意:必须有网络

然后在SecureCRT执行一下步骤


把下载的mysql安装包放在update目录下
然后在linux上的 /usr/local/ 下创建mysql目录,然后进入mysql目录:

cd /usr/local/
mkdir mysql
cd mysql

然后输入rz命令

rz


上传完成后,进行解压,在mysql目录中执行以下命令
tar -xvf mysql-8.0.11-1.el6.i686.rpm-bundle.tar
结果如下:

第三步:开始安装

安装之前查看你的linux上有没有mysql或者mariadb
使用一下命令查看:

rpm -qa | grep mysql
或者
rpm -qa | grep mariadb

如果查出内容了,就把这些全卸载了:

rpm -e --nodeps  输入你查到的内容

卸载干净后,查看/var/lib/ 下有没有mysql文件夹,有就删除

 rm -rf  /var/lib/mysql

开始安装:
安装 mysql-community-common-8.0.11-1.el6.i686.rpm

rpm -ivh mysql-community-common-8.0.11-1.el6.i686.rpm --nodeps --force

安装 mysql-community-libs-8.0.11-1.el6.i686.rpm

rpm -ivh  mysql-community-libs-8.0.11-1.el6.i686.rpm --nodeps --force

安装 mysql-community-client-8.0.11-1.el6.i686.rpm

rpm -ivh mysql-community-client-8.0.11-1.el6.i686.rpm --nodeps --force

安装 mysql-community-server-8.0.11-1.el6.i686.rpm

rpm -ivh mysql-community-server-8.0.11-1.el6.i686.rpm --nodeps --force

安装完成执行 rpm -qa | grep mysql 查看,会有你安装的四个

注意:到这可能会出现一个问题,就是执行rpm -qa | grep mysql 什么也没出现,这是因为你的mysql安装包和linux版本不匹配,导致mysql没有安装上,请仔细检查你下载的安装包,一定不要下载错了。

第四步:初始化MySQL

1、执行 mysqld --initialize

mysqld --initialize

这个命令执行后会在/var/lib/下生成一个mysql文件夹,这个文件夹就是mysql的data,同时也会生成一个用户名为 root 和一个初始化密码,密码在 /var/log/mysqld.log文件中,可以使用 cat /var/log/mysqld.log | grep password 命令进行查找

cat /var/log/mysqld.log | grep password 

一定要记住这个密码

注意:到这里有的人可能会出现一个问题,就是生成初始化密码失败,这是因为你初始化之前没有删除/var/lib/mysql这个文件夹
初始化mysql后执行 chown mysql:mysql /var/lib/mysql -R;给data分配权限

chown mysql:mysql /var/lib/mysql -R

启动mysql服务
这里需要注意,如果你的linux是linux 6点几,就使用service mysqld start

service mysqld start

如果你的linux是linux 7点几可以使用systemctl start mysqld.service;

systemctl start mysqld.service

登录MySQL:

mysql -u root -p

输入你刚刚记下的密码

如果你登不上,而且打印信息有mysql.sock 那你就配置/etc/my.cnf文件,如果你发现没有my.cnf,使用touch my.cnf创建文件

touch /etc/my.cnf

然后使用:

vim /etc/my.cnf

文件中写入:

[client]
port = 3306
socket = /var/lib/mysql/mysql.sock
default-character-set=utf8
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/8.0/en/server-configuration-defaults.html

[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
#
# 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
#
# Remove leading # to revert to previous value for default_authentication_plugin,
# this will increase compatibility with older clients. For background, see:
# https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_default_authentication_plugin
# default-authentication-plugin=mysql_native_password
port = 3306
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
character-set-server=utf8

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

[mysql]
no-auto-rehash
default-character-set=utf8

添加完重新启动mysql服务

service mysqld restart

修改密码: ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘root’ 这里修改密码为root

 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root'

第五步:配置远程访问

把在所有数据库的所有表的所有权限赋值给位于所有IP地址的root用户,并且密码是root

create user 'root'@'%' identified with mysql_native_password by 'root';
grant all privileges on *.* to 'root'@'%' with grant option;
flush privileges;

我试了很多在防火墙配置文件中开放3306端口但是不行,所以我就把防火墙关了

service iptables stop

第六步:乱码问题

配置/etc/my.cnf
使用命令:vim /etc/my.cnf

vim /etc/my.cnf

在文件开始处添加

[clent]
port = 3306
socket = /var/lib/mysql/mysql.sock
default-character-set=utf8

在[mysqld]处添加

port = 3306
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
character-set-server=utf8

在文件结尾处添加:

[mysql]
no-auto-rehash
default-character-set=utf8

**

CentOS 6.7系统下MySQL8.0.11安装完成,linux 7类似,如果有问题欢迎评论。

**

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值