Centos7 离线安装mysql5.7

目录

1.安装包下载

2.解压安装包并安装

3.配置数据库

3.1首先找到my.cnf文件进行编辑 

3.2启动mysql 服务

3.3重新使用设置好的密码登陆,并设置远程登陆权限

远程登陆授权


 

1.安装包下载

mysql5.7 版本下载:https://dev.mysql.com/downloads/mysql/5.7.html#downloads

安装新版mysql前,需将系统自带的mariadb-lib卸载

[root@localhost mysql]#  rpm -qa|grep mariadb
mariadb-libs-5.5.60-1.el7_5.x86_64
[root@localhost mysql]#  rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
[root@localhost mysql]#  rpm -qa|grep mariadb


2.解压安装包并安装

  • tar -xvf 命令解压mysql 的rpm 包
tar -xvf mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar

为了避免权限问题 这里我偷个懒 把解压出来的文件全部赋个权限(mysql 是我在/opt下解压rpm包的的文件夹)

[root@localhost opt]# chmod -R 777 mysql

 

  • 依次解压mysql-community-common-5.7.26-1.el7.x86_64.rpm 、mysql-community-libs-5.7.26-1.el7.x86_64.rpm、mysql-community-client-5.7.26-1.el7.x86_64.rpm、mysql-community-server-5.7.26-1.el7.x86_64.rpm 这四个包

 

注:在安装之前 mysql-community-server-5.7.26-1.el7.x86_64.rpm需要安装libaio
 

3.配置数据库

  • 配置文件:/etc/my.cnf
  • 日志文件:/var/log/mysqld.log
  • 服务启动脚本:/usr/lib/systemd/system/mysqld.service socket
  • 文件:/var/run/mysqld/mysqld.pi

 

3.1首先找到my.cnf文件进行编辑 

[root@localhost /]# cd /etc
[root@localhost etc]# vim my.cnf

在[myqld]下行添加

skip-grant-tables 

skip-grant-tables  跳过登陆验证 方便设置用户密码 不然登陆会报ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) 各种问题

character_set_server=utf8
init_connect='SET NAMES utf8'

上述代码是设置默认字符集UTF-8。

3.2启动mysql 服务

[root@localhost mysql]# systemctl start mysqld.service
[root@localhost mysql]# mysql

进入mysql命令模式 ,修改用户密码(注意 5.7版本的USER表的password字段没得了 ,改成了authentication_string;

flush privileges; 是立即生效命令;password()里面是你自定义的密码 这里我的密码是ming!@#123

mysql> update mysql.user set authentication_string=password('ming!@#123') where user='root';
Query OK, 1 row affected, 1 warning (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 1

mysql>  flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> exit
Bye

3.3重新使用设置好的密码登陆,并设置远程登陆权限

[root@localhost mysql]# systemctl stop  mysqld.service

 停止服务后 编辑my.cnf 文件 将skip-grant-tables 注释掉或者删除

 

然后重启服务  systemctl start mysqld.service

[root@localhost mysql]# systemctl start mysqld.service
[root@localhost mysql]#  mysql -u root -p

再输入刚才设置的密码 即可进入mysql

如果输入命令的时候报

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

的错误的话 需要重新修改下密码 

alter user user() identified by "ming!@#123";

远程登陆授权

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

 

以上。

相关推荐
©️2020 CSDN 皮肤主题: 创作都市 设计师:CSDN官方博客 返回首页