第一步:下载

首先去mysql官网下载对应的mysql安装包:
下载地址:https://dev.mysql.com/downloads/mysql/

第二步:卸载mariadb

通过ftp工具将安装包放到服务器上:/usr/local/

安装之前,我们需要将centos自带的mariadb卸载,mariadb属于mysql的一个分支,若不卸载就直接安装的话会报错。

#rpm -qa | grep mariadb //查看所有mariadb已安装的模块
#rpm -e mariadb-libs-5.5.44-1.el7_1.x86_64  //进行卸载

若提示有依赖包,卸载错误,则强制卸载:

#rpm -e --nodeps mariadb-libs-5.5.44-1.el7_1.x86_64  //强制卸载

将所有的mariadb安装包都删除后,然后开始安装mysql

第三部:安装mysql

首先创建mysql组和用户:

#$groupadd mysql  //添加mysql组
#$useradd -r -g mysql mysql   //mysql组里添加mysql用户,r参数表示mysql用户是系统用户,不可用于登录系统。

解压安装包:

# cd /usr/local/    //进入到安装包路径
# tar -zxvf mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz   //解压安装包
# mv mysql-5.7.12-linux-glibc2.5-x86_64 mysql  //将解压的安装包更名为mysql

修改MySQL 数据目录的 ownership:

# chown -R mysql mysql/  
# chgrp -R mysql mysql/

在mysql目录下新建一个data文件夹:

#cd mysql/ 
#mkdir -vp data

安装和初始化数据库:

# bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

/etc/my.cnf是默认的配置文件,默认往往没有,所以我们需要拷贝下:

#cp -a ./support-files/my-default.cnf /etc/my.cnf  
#cp -a ./support-files/mysql.server  /etc/init.d/mysqld
#/etc/init.d/mysqld restart  重启mysql
#chkconfig --level 35 mysqld on  //设置开机启动

查看初始化密码

#cat /root/.mysql_secret   //这个要记住,第一次进入mysql要输入的

配置环境变量

#vim /etc/profile   //在最下面加上:
export PATH=$PATH:/usr/local/mysql/bin

使更改的配置文件生效:

#source /etc/profile

创建连接:

# ln -s /usr/local/mysql/bin/mysql /usr/bin

登陆mysql:

#mysql -uroot -p

输入前面记住的密码,进入mysql

进入mysql后更改下root密码:

mysql> SET PASSWORD = PASSWORD('123456');  
 mysql> flush privileges;  //刷新

配置远程连接:

mysql> use mysql;  //进入mysql数据库

mysql> grant all privileges on *.*  to 'root'@'%' identified by'test1234';//将所有数据库的所有表(*.*)的所有权限(all privileges),授予通过任何ip(%)访问的root用户,密码为123456,如果要限制只有某台机器可以访问,将其换成相应的IP即可
mysql>flush privileges //刷新
# /etc/init.d/mysqld restart   //重启mysql

以上配置完成后别忘了还要开启3306端口,不然远程也是连接不了的

最重要,也是最容易被忽略的:阿里云服务器开通除22以外的端口,还要去登陆阿里云安全组申请开通,否则就算服务器本身开通了也是连接不了的

开通端口:centos7跟以前相比使用的是Firewalld防火墙管理工具,不再是iptables

Firewalld增加端口的命令是:

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

不过我用的还是iptables,以下是用iptables开启端口的方法:
关闭Firewalld:

#systemctl stop firewalld
#systemctl mask firewalld

安装iptables-services:

#yum -y install iptables-services

修改防火墙配置,增加3306端口:
首先查看是否有这个文件/etc/sysconfig/iptables,如果没有的话输入:

#iptables -P OUTPUT ACCEPT
#service iptables save   //进行保存,默认就保存到了/etc/sysconfig目录下的iptables文件中

然后开启3306端口:

#vim  /etc/sysconfig/iptables

在COMMIT上面增加:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

不想手动修改也可以直接输入命令 :

/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT 
/etc/rc.d/init.d/iptables save //然后保存

查看打开的端口:

#cat /etc/sysconfig/iptables
#systemctl restart iptables.service #重启防火墙使配置生效

#systemctl enable iptables.service #设置防火墙开机启动

最后重启系统使设置生效即可。

测试结果如下图:

centos配置sftp centos配置远程连接_远程连接

到此,centos7安装mysql成功!