• 118489

    文章

  • 803

    评论

  • 12

    友链

  • 最近新加了换肤功能,大家多来逛逛吧~~~~
  • 喜欢这个网站的朋友可以加一下QQ群,我们一起交流技术。

Linux Centos 7 - MySQL 5.7 在线安装

撸了今年阿里、腾讯和美团的面试,我有一个重要发现.......>>

    环境搭建:https://my.oschina.net/discussjava/blog/4308730

一、环境

  • Centos 7
  • MySQL 5.7

二、安装与配置

2.1 查询并卸载系统自带的 Mariadb

原因:以前的Linux系统中数据库大部分是mysql,不过自从被sun收购之后,就没用集成在centos这些开源Linux系统中了,那么如果想用的话就需要自己安装了,首先centos7 已经不支持mysql,因为收费了你懂得,所以内部集成了mariadb,而安装mysql的话会和mariadb的文件冲突,所以需要先卸载掉mariadb
————————————————
版权声明:本文为CSDN博主「辰辰安」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u012026446/article/details/79397953

rpm -qa | grep mariadb
rpm -e --nodeps 文件名

2.2 检查 yum 源中是否存在 mysql

    centos7自带的yum源以及之前配置的yum源中,搜索均没有发现mysql,因此我们下一步需要到MySQL的官网下载对应的repo文件。

yum search mysql

2.3 下载 mysql.rpm

    官网:https://dev.mysql.com/downloads/mysql/

mkdir /home/softinstallpackage #在home下面创建一个文件夹目录softinstallpackage存放下载的rpm
wget -i /home/softinstallpackage http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm #下载rpm到对应的目录下

2.4 安装 repo

    到/home/softinstallpackage目录下执行此命令后,/etc/yum.repos.d目录下,可以看到已经生成的2个repo文件。

  • mysql-community.repo
  • mysql-community-source.repo
rpm -ivh mysql57-community-release-el7-10.noarch.rpm

    执行yum命令来检查一下,我们的yum源中是否已经出现对应的mysql安装服务列表(mysql57-community)。

yum search mysql57

2.5 下载并安装 MySQL

    疑问:为什么安装命令是yum install mysql-server 或 mysql-community-server,而且与 yum install mysql 的安装内容是不一致的,我在yum search mysql 结果表中并没有看到这几个命令,路过的大神麻烦告知一下,蟹蟹。

yum install mysql-server
或
yum install mysql-community-server

    安装内容:

  • mysql-community-server
  • mysql-community-client
  • mysql-community-common
  • mysql-community-libs

2.6 启动 MySQL 服务和相关设置

    启动SQL服务。

systemctl start mysqld.service

    检查SQL服务状态。

systemctl status mysqld.service

2.7 获取临时密码和登陆 MySQL

    获取第一次安装MySQL后的临时密码用于登陆数据库。

grep "password" /var/log/mysqld.log

    登陆MySQL,临时密码直接复制后粘贴即可。

mysql -uroot -p

2.8 修改密码和密码安全策略修改

    ps:内部环境测试可以将密码安全策略调低,方便测试和使用,但是在IDC正式环境下不要修改,保证安全,同时在做等保测评时,技术人员也会对密码策略有要求。

    首次登陆数据库,要求必须先修改密码,不能直接操作查看策略情况,当然也可以直接输入sql语句直接修改策略,我们这里还是先按照要求过一遍。

    初始密码策略要求:包含符号、大小写字母、阿拉伯数字,且必须大于8位。()

    图中已经进行测试,修改密码为:~!Qw1234567

ALTER USER 'root'@'localhost' IDENTIFIED BY '~!Qw1234567';

  

    输入以下命令,检查当前策略情况。

SHOW VARIABLES LIKE 'validate_password%';

    关于MySQL密码策略相关参数说明:

    1)、validate_password_length  固定密码的总长度;

    2)、validate_password_dictionary_file 指定密码验证的文件路径;

    3)、validate_password_mixed_case_count  整个密码中至少要包含大/小写字母的总个数;

    4)、validate_password_number_count  整个密码中至少要包含阿拉伯数字的个数;

    5)、validate_password_policy 指定密码的强度验证等级,默认为 MEDIUM;

            关于 validate_password_policy 的取值:

            0/LOW:只验证长度;

            1/MEDIUM:验证长度、数字、大小写、特殊字符;

            2/STRONG:验证长度、数字、大小写、特殊字符、字典文件;

    6)、validate_password_special_char_count 整个密码中至少要包含特殊字符的个数;

    这里为了测试方便,要将密码该为root,使用以下命令修改策略值。

set global validate_password_policy=0;
set global validate_password_length=1;

    将密码修改为:root

ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';

2.9 开启 MySQL 远程访问权限

    登陆数据库,先通过以下语句完成任意地址访问数据库的配置。可将 host 字段数据配置为以下情况。

  • %,表示可以使用任意IP地址访问。
  • 具体IP地址,可以让指定IP地址访问此数据库。
show databases; # 罗列数据库
use mysql; # 使用mysql数据库
select host,user from user; # 查询
update user set host='%' where user='root'; # 更新
flush privileges; # 刷新权限

    或(这里 root 的密码已经该为了 root )

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

2.10 查看当前数据库的详细信息

    输入以下命令,查一下 mysql 进程情况和端口情况,进程已经跑在 3306 端口上。

ps -ef | grep mysqld
netstat -lanp 或 netstat -lanp | grep 3306

    已经自动生成 mysql 用户。

cat /etc/passwd

  • 默认数据库配置文件:/etc/my.cnf
  • 默认安装目录:datadir=/var/lib/mysql
  • 默认错误日志文件存储目录:log-error=/var/log/mysqld.log
cat /etc/my.cnf

2.11 firewall 防火墙放行端口

    通过以下命令,放行 3306 端口,可以进行远程访问,后续我们可以使用 Navicat 来远程访问。

添加(--permanent永久生效,没有此参数重启后失效)
firewall-cmd --zone=public --add-port=3306/tcp --permanent 

重新载入
firewall-cmd --reload

查看
firewall-cmd --zone= public --query-port=3306/tcp

    Navicat 远程连接。


695856371Web网页设计师②群 | 喜欢本站的朋友可以收藏本站,或者加入我们大家一起来交流技术!

0条评论

Loading...


自定义皮肤 主体内容背景
打开支付宝扫码付款购买视频教程
遇到问题联系客服QQ:419400980
注册梁钟霖个人博客