(亲测有效)Linux系统centos7.6中如何安装mysql5.7

本文详述在CentOS 7.6中安装MySQL 5.7的步骤,包括下载yum源、安装rpm包、启动与配置MySQL、修改默认密码、开启远程登录及防火墙端口,并最终将数据库配置为UTF8编码。

sudo su 切换到root用户

防火墙

如不关闭防火墙,那么必须开放端口!

查看防火墙状态

# 结果显示为running或not running
firewall-cmd --state    

查询端口号是否开放

# 查询端口号3306是否开放
firewall-cmd --query-port=3306/tcp

关闭防火墙

systemctl stop firewalld.service
systemctl disable firewalld.service

查看防火墙是否关闭

firewall-cmd --state

重新加载防火墙

firewall-cmd --reload

开启防火墙

systemctl start firewalld

0.简介

从CentOS 7.0发布以来,yum源中开始使用mariadb来代替MySQL的安装。即使你输入的是yum install mysql , 显示的也是mariadb的安装内容。输入yum install mysql-server,提示yum没有可用的安装包。

1.下载yum源

如果使用yum安装MySQL的话,就需要去下载官方指定的yum源。
打开网页:https://dev.mysql.com/downloads/repo/yum/

点击Red Hat Enterprise Linux 7 / Oracle Linux 7 (Architecture Independent), RPM Package后面的download,进入新的页面点击No thanks, just start my download.就可以看到下载源地址了。

wget https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm

注意:如果提示输入 wget命令无效,则安装 yum -y install wget

2.安装

2.1 安装rpm包

rpm -ivh mysql57-community-release-el7-11.noarch.rpm

2.1.1 方法一:查看安装rpm是否成功

安装完成之后,我们发现在/etc/yum.repos.d目录下新增了两个文件:

  • mysql-community.repo
  • mysql-community-source.repo

2.1.2 方法二:查看安装rpm是否成功

检查mysql的yum源是否安装成功:

yum repolist enabled | grep "mysql.*-community.*" 

如下图则表示成功

mysql-connectors-community/x86_64        MySQL Connectors Community           45
mysql-tools-community/x86_64             MySQL Tools Community                57
mysql57-community/x86_64                 MySQL 5.7 Community Server          247

再次使用yum来安装mysql-server,就不会提示没有可用软件包.

2.2 yum 安装mysql

yum install mysql-community-server

安装mysql各文件的位置

Files or ResourcesLocation
Client programs and scripts/usr/bin
mysqld server/usr/sbin
Configuration file/etc/my.cnf
Data directory/var/lib/mysql
Error log fileFor RHEL, Oracle Linux, CentOS or Fedora platforms:/var/log/mysqld.log; For SLES: /var/log/mysql/mysqld.log
Value of secure_file_priv/var/lib/mysql-files
System V init scriptFor RHEL, Oracle Linux, CentOS or Fedora platforms: /etc/init.d/mysqld For; SLES: /etc/init.d/mysql
Systemd serviceFor RHEL, Oracle Linux, CentOS or Fedora platforms: mysqld ;For SLES: mysql
Pid file/var/run/mysql/mysqld.pid
Socket/var/lib/mysql/mysql.sock
Keyring directory/var/lib/mysql-keyring
Unix manual pages/usr/share/man
Include (header) files/usr/include/mysql
Libraries/usr/lib/mysql
Miscellaneous support files (for example, error messages, and character set files)/usr/share/mysql

3.启动mysql

# 启动mysql服务
systemctl start mysqld
# 查看mysql服务的状态
systemctl status mysqld

4.配置mysq

4.1 开机启动

systemctl enable mysqld
systemctl daemon-reload

4.2 查看默认密码

mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码。通过下面的方式找到root默认密码,然后登录mysql进行修改:

grep 'temporary password' /var/log/mysqld.log

用刚刚查到的密码登录

4.3 修改默认密码

# 先登录mysql
mysql -uroot -p

# 修改密码
set password for 'root'@'localhost'=password('MyNewPass!');

如果出现Your password does not satisfy the current policy requirements 密码:大小写数字特殊字符 全用上吧

4.4 开启mysql的远程登录

默认情况下mysql为安全起见,不支持远程登录mysql,所以需要设置开启 远程登录mysql的权限
将host字段的值改为%就表示在任何客户端机器上能以root用户登录到mysql服务器,建议在开发时设为%

# 登录进入mysql执行
grant all privileges on *.* to 'root' @'%' identified by '填写root的密码' with grant option;

flush privileges;

# 重启mysql
systemctl restart mysqld

4.5 开放对外端口3306

在 Centos 7 或 RHEL 7 或 Fedora 中防火墙由 firewalld 来管理,而不是 iptables


# zone -- 作用域
# add-port=3306/tcp -- 添加端口,格式为:端口/通讯协议
# permanent -- 永久生效,没有此参数重启后失效
# 开启3306端口后,workbench或naivcat 就能连接到MySQL数据库了
firewall-cmd --zone=public --add-port=3306/tcp --permanent

# 重新加载防火墙
firewall-cmd --reload 

4.6 配置数据库为UTF8

4.6.1 显示当前系统编码;C表示ASCII码

# 在终端输入
locale 

4.6.2 查看自己系统有没有安装中文语言包

locale -a

如果没有,就安装中文语言包

yum install kde-l10n-Chinese

4.6.3 修改i18n和locale.conf的配置文件

4.6.3.1修改i18n

centos7.6没有i18n配置,所以不用设置此项
vim /etc/sysconfig/i18n,在里面添加如下两行代码:

LANG="zh_CN.UTF-8"
LC_ALL="zh_CN.UTF-8"

然后执行一下,以使刚修改的文件生效:

source/etc/sysconfig/i18n

4.6.3.2修改locale.conf

vim /etc/locale.conf

# 添加
LANG="zh_CN.UTF-8"

同样执行一下,使刚修改的文件生效

source /etc/locale.conf

测试会不会显示乱码

[root@localhost /]# touch 你好.txt
[root@localhost /]# ls -l
-rw-r--r--.   1 root root    0 5月  10 01:17 你好.txt
...

最后重启mysql,重启命令行 systemctl restart mysqld

5 大功告成

真心佳作,实属不易!码农道路,多多指教!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值