欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

linux 安装MySql 5.7.20 【亲测】

程序员文章站 2022-03-21 08:02:44
一、 #卸载系统自带的Mariadb[root@master ~]# rpm -qa|grep mariadbmariadb-libs-5.5.44-2.el7.centos.x86_64[root@master ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64二、 #检查mysql是否存在[root@master ~]# rpm -qa | grep mysql三、 #解压并并改名为mysql,在此文件夹下新建data目...

一、 #卸载系统自带的Mariadb
[root@master ~]# rpm -qa|grep mariadb
mariadb-libs-5.5.44-2.el7.centos.x86_64
[root@master ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64

二、 #检查mysql是否存在
[root@master ~]# rpm -qa | grep mysql

三、 #解压并并改名为mysql,在此文件夹下新建data目录
[root@charging-85 opt]# tar -zxvf mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz 
[root@charging-85 opt]# mv mysql-5.7.20-linux-glibc2.12-x86_64 /program/mysql-5.7.20
[root@charging-85 opt]# cd /program/mysql-5.7.20/
[root@charging-85 mysql-5.7.20]# mkdir data

[root@charging-85 mysql-5.7.20]# mkdir tmp

[root@charging-85 mysql-5.7.20]# mkdir log

四、 #在etc下新建配置文件my.cnf,并在该文件内添加以下配置

[mysqld]
basedir=/program/mysql-5.7.20
datadir=/program/mysql-5.7.20/data
socket=/program/mysql-5.7.20/tmp/mysql.sock
port=4578
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

[client]
socket=/program/mysql-5.7.20/tmp/mysql.sock
[mysqld_safe]
#log-error=/var/log/mariadb/mariadb.log
#pid-file=/var/run/mariadb/mariadb.pid
basedir=/program/mysql-5.7.20
datadir=/program/mysql-5.7.20/data
socket=/program/mysql-5.7.20/tmp/mysql.sock
port=4578
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

五、创建mysql用户组和mysql用户

groupadd mysql

useradd -g mysql mysql

六、.修改权限

 [root@2snqobz5vv1d7s /]# cd /program/mysql-5.7.20/

[root@charging-85 mysql-5.7.20]# chown -R mysql:mysql ./

七、 #安装和初始化

[root@charging-85 mysql-5.7.20]#  cd /program/mysql-5.7.20/

[root@charging-85 mysql-5.7.20]# bin/mysqld --initialize --user=mysql --basedir=/program/mysql-5.7.20 --datadir=/program/mysql-5.7.20/data

[root@charging-85 mysql-5.7.20]#  chown 777 /etc/my.cnf
[mysqld]
basedir=/program/mysql-5.7.20
datadir=/program/mysql-5.7.20/data
socket=/program/mysql-5.7.20/tmp/mysql.sock
port=3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

[client]
socket=/program/mysql-5.7.20/tmp/mysql.sock
[mysqld_safe]
#log-error=/var/log/mariadb/mariadb.log
#pid-file=/var/run/mariadb/mariadb.pid
basedir=/program/mysql-5.7.20
datadir=/program/mysql-5.7.20/data
socket=/program/mysql-5.7.20/tmp/mysql.sock
port=3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

 

 

 八、启动MySQL,并查看是否已启动成功

[root@charging-85 bin]# cd /program/mysql-5.7.20/

[root@charging-85 mysql-5.7.20]# bin/mysqld_safe --user=mysql &

九、通过初始密码登录MySQL,并修改密码

1、以root账户登录mysql,默认是没有密码的

[root@charging-85 bin] #

[root@2snqobz5vv1d7s bin]# cd /program/mysql-5.7.20/bin/

mysql -uroot -p

要输入密码的时候直接回车即可。

2、设置root账户密码为root(也可以修改成你要的密码)

mysql> SET PASSWORD = PASSWORD('2019@Iotcomm!@#');

mysql> flush privileges;

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '2019@Iotcomm!@#' WITH GRANT OPTION;

mysql>flush privileges;

3、设置远程主机登录,注意下面的your username 和 your password改成你需要设置的用户和密码

 mysql>GRANT ALL PRIVILEGES ON *.* TO 'iotcomm'@'%' IDENTIFIED BY 'iotcomm' WITH GRANT OPTION;

mysql>flush privileges;

十、设置开机自启动服务控制脚本

1、复制启动脚本到资源目录

[root@localhost mysql]#

cd /program/mysql-5.7.20

cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld

2、增加mysqld服务控制脚本执行权限

[root@localhost init.d]#

chmod +x /etc/rc.d/init.d/mysqld

3、将mysqld服务加入到系统服务

[root@localhost init.d]#

chkconfig --add mysqld

4、检查mysqld服务是否已经生效

[root@localhost init.d]#

chkconfig --list mysqld

命令输出类似下面的结果:

mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off

表明mysqld服务已经生效,在2、3、4、5运行级别随系统启动而自动启动,以后可以使用service命令控制mysql的启动和停止

命令为:service mysqld start和service mysqld stop

5、防火墙端口开放

firewall-cmd --zone=public --add-port=3306/tcp --permanent

firewall-cmd --reload

本文地址:https://blog.csdn.net/yh250648050/article/details/107199913