Centos7.X安装Mysql5.7.31(解压社区版)到home目录配置方法

目录

一、准备

二、Mysql文件下载

1、到官网直接下载

2、上传

3、解压

三、配置并安装

1、赋权

2、安装和初始化MySQL数据库

3、配置Mysql

四、常见问题解决

1、root密码无法登录

2、远程登录时报错


一、准备

若是安装Window10的mysql请查看windows 10安装Mysql5.7.31,并使用navicat连接解决1862错误_shien00000xu的博客-CSDN博客

1、检查是否已安装过mariadb,若有便删除(linux系统默认自带)

[root@xxh/]# rpm -qa | grep mariadb
[root@xxh/]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64

2、检查是否之前安装过Mysql,如果有则执行下面命令删除

[root@xxh/]# rpm -qa | grep mysql
[root@xxh/]# rpm -e –-nodeps mysql-libs-5.1.52.x86_64

3、检查mysql组和用户是否存在,如无创建:

  [root@xxh~]# cat /etc/group | grep mysql

  [root@xxh~]# cat /etc/passwd |grep mysql

  [root@xxh~]# groupadd mysql

  [root@xxh~]# useradd -r -g mysql mysql

二、Mysql文件下载

1、到官网直接下载

https://downloads.mysql.com/archives/community/

选择你需要的版本,Mysql5.7.24-31都可以。

2、上传

使用ssh工具上传至系统的home目录下。

3、解压

使用tar -zxvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz(依据实际文件名即可)

更该文件名为mysql

[root@xxh~]#mv mysql-5.7.24-linux-glibc2.12-x86_64   mysql

实际效果如下:

三、配置并安装

1、赋权

[root@xxh~]#chown -R mysql:mysql mysql

其中mysql:mysql是用户、组,最后一个mysql是文件夹。

2、安装和初始化MySQL数据库

进入 mysql目录

[root@xxh~]# cd /home/mysql/bin

[root@xxh bin]# ./mysql_install_db --user=mysql --basedir=/home/mysql/ --datadir=/home/mysql/data/

执行完成后会出现5个[Warning],暂时不用管。

[root@xxh bin]# cd /home/mysql

[root@xxh mysql]#cp -a ./support-files/mysql.server /etc/init.d/mysqld

并修改mysqld里的 basedir和datadir

[root@xxh~]# vim /etc/init.d/mysqld

3、配置Mysql

(1)检查是否配置my.cnf,若有删除

[root@xxh~]# rm -rf /etc/my.cnf

(2)在mysql的bin目录下执行以下命令

[root@xxh bin]#./mysqld_safe --user=mysql &

执行后出现success!字样

Stating MySQL  SUCCESS!

[1]+ 完成    ./mysqld_safe --user=mysql

(3)重新启动mysql

(4)配置开机检查

chkconfig --level35  mysqld on或使用systemctl enable mysqld 让其开机自启动。

(5)初始化密码

在bin执行以下命令:cat /root/.mysql_secret,最后就是初始密码

(6)重置密码

在bin使用命令:[root@xnh mysql]#  ./mysql -uroot -p

输入刚刚看到的密码,即可以登录(若不能登录,请看第四节)

mysql> use mysql;

mysql> SETPASSWORD = PASSWORD('root');

mysql>flush privileges;

mysql>use mysql;

添加远程访问%是指没有限制。

mysql>update user set host = '%' where user = 'root';

(7)配置防火墙上的端口,使mysql的3306端口通过

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

firewall-cmd --reload              #重新载入

firewall-cmd --zone=public --query-port=3306/tcp              #查看是否生效

(8)配置环境变量

vim /etc/profile

在最后增加一行:

export PATH=$PATH:/home/mysql/bin

四、常见问题解决

1、root密码无法登录

在/etc下新建my.cnf,把skip-grant-tables加入,你也可以只在[mysqld]下只写这一条,其它不写。

[mysqld]
port = 3306
#需要填写你的实际目录
basedir=/home/mysql
datadir=/home/mysql/data
max_connections=200
character-set-server=utf8
default-storage-engine=INNODB
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
skip-grant-tables
[mysql]
default-character-set=utf8
 

重启服务器

[root@xnh home]# service mysqld restart

之后,使用在bin执行命令:

[root@xnh mysql]#  ./mysql -uroot -p

出现让输入密码时,可以直接回车,因为skip-grant-tables已经跳过验证密码了。

再执行如下命令:

#将数据库切换至mysql库
mysql> USE mysql;
#修改密码
mysql> update user set authentication_string=PASSWORD('123456@ABC') where user='root';
#刷新MySQL权限相关的表
mysql> flush privileges;
mysql> exit;

2、远程登录时报错

配置好账号、密码后,会出现报错:MYSQL(5.7) 报错:1862 your password has expired…

此时参考我的上个文章中的第 2.1节(windows 10安装Mysql5.7.31,并使用navicat连接解决1862错误_shien00000xu的博客-CSDN博客)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值