MySQL安装及卸载(CentOS版)

1.下载(社区版)

MySQL官网:https://dev.mysql.com/downloads/mysql/
在这里插入图片描述
选择对应系统版本的MySQL安装包,由于本人使用的是CentOS7,所以选择Red Hat7(CentOS是基于Red Hat的开源版本),另外不建议选择最新的版本,MySQL8在很多地方做了调整,有些语法变动,考虑项目升级成本建议选择低版本的,本文示例使用版本"5.7.28"

建议直接下载rpm-bundle.tar版本,不然通过yum到MySQL仓库下载很慢的,不如直接下载好后解压安装来的快

2.安装MySQL

1)查看并卸载当前已安装版本(CentOS自带mariadb)

yum查询、卸载方式:

[root@localhost ~]# yum list installed | grep mariadb
mariadb-libs.x86_64                         1:5.5.64-1.el7             @anaconda
[root@localhost ~]# yum remove mariadb-libs.x86_64

rpm查询、卸载方式:

[root@localhost ~]# rpm -qa | grep mariadb
mariadb-libs-5.5.64-1.el7.x86_64
[root@localhost ~]# rpm -e mariadb-libs-5.5.64-1.el7.x86_64

以上提供两个卸载方式,二选一即可

删除mariadb配置文件:

rm -f /etc/my.cnf

删除mariadb数据目录:

rm -rf /var/lib/mysql/
2)解压tar包
tar -xvf mysql-5.7.28-1.el7.x86_64.rpm-bundle.tar
[root@localhost software]# tar -xvf mysql-5.7.28-1.el7.x86_64.rpm-bundle.tar 
mysql-community-embedded-5.7.28-1.el7.x86_64.rpm
mysql-community-libs-compat-5.7.28-1.el7.x86_64.rpm
mysql-community-devel-5.7.28-1.el7.x86_64.rpm
mysql-community-embedded-compat-5.7.28-1.el7.x86_64.rpm
mysql-community-libs-5.7.28-1.el7.x86_64.rpm
mysql-community-test-5.7.28-1.el7.x86_64.rpm
mysql-community-common-5.7.28-1.el7.x86_64.rpm
mysql-community-embedded-devel-5.7.28-1.el7.x86_64.rpm
mysql-community-client-5.7.28-1.el7.x86_64.rpm
mysql-community-server-5.7.28-1.el7.x86_64.rpm
3)安装MySQL

并非解压的所有rpm都需要安装,只用装如下最基础的就行了,其它的按需安装

rpm -ivh mysql-community-common-5.7.28-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.28-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.28-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.28-1.el7.x86_64.rpm

3.数据库初始化

1)启动MySQL
systemctl start mysqld.service
或者
service mysqld start

扩展 :
查看服务运行状态:systemctl status mysqld.service
关闭服务:systemctl stop mysqld.service
重启服务:systemctl restart mysqld.service

2)修改密码

MySQL服务启动后需要修改初始密码。MySQL 默认创建了 root 用户的密码,这个密码打印在 MySQL 的日志文件/var/log/mysqld.log中,可以通过temporary password关键字来找出这个临时的密码:

grep 'temporary password' /var/log/mysqld.log
[root@localhost software]# grep 'temporary password' /var/log/mysqld.log
2020-01-02T02:17:59.530742Z 1 [Note] A temporary password is generated for root@localhost: P76M%iuqcovy

上面示例中"P76M%iuqcovy"就是MySQL自动创建的初始密码,现用它来登录连接MySQL服务:

mysql -u root -p

登录后修改初始密码:

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

如果遇到如下问题,可参考:解决方案

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

简单来说,就是需要把密码设置满足MySQL的密码策略(默认密码的长度最小值为 8 ,由 大/小写字母各一个 + 阿拉伯数字一个 + 特殊字符一个)

密码设置完后需重启MySQL服务:

systemctl restart mysqld.service
3)开放远程连接

MySQL默认只对本机开放连接,当需要别的主机连接数据库时则需要赋予其它主机访问数据库的权限。

开放远程连接给所有主机("%"表示所有,"123456"为我设置的MySQL密码,需自行替换):

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

开放远程连接给某一个具体主机:
grant all privileges on . to ‘root’@‘192.168.0.1’ identified by ‘123456’ with grant option;

更改完后刷新权限:

flush privileges;
4)关闭防火墙或者开放MySQL端口

查看防火墙状态:

systemctl status firewalld
或者
firewall-cmd --state

开放MySQL端口:

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

–permanet 参数表示永久生效

重新加载防火墙配置:

firewall-cmd --reload

可用如下命令查看系统中对外开放的端口:

firewall-cmd --list-ports

或者

netstat -talnp
5)连接测试

在这里插入图片描述

4.卸载

参考:https://blog.csdn.net/yuxielea/article/details/100551000

查询当前已安装版本:

rpm -qa|grep mysql

然后依次卸载:

rpm -e --nodeps xxx

例如:

[root@lee000 ~]# rpm -qa|grep mysql
mysql-community-client-5.7.28-1.el7.x86_64
mysql-community-common-5.7.28-1.el7.x86_64
mysql-community-libs-5.7.28-1.el7.x86_64
mysql-community-server-5.7.28-1.el7.x86_64
[root@lee000 ~]# rpm -e --nodeps mysql-community-client-5.7.28-1.el7.x86_64
[root@lee000 ~]# rpm -e --nodeps mysql-community-common-5.7.28-1.el7.x86_64
[root@lee000 ~]# rpm -e --nodeps mysql-community-libs-5.7.28-1.el7.x86_64
[root@lee000 ~]# rpm -e --nodeps mysql-community-server-5.7.28-1.el7.x86_64
[root@lee000 ~]# rpm -qa|grep mysql
[root@lee000 ~]# 

卸载后可以再次查询已安装mysql是否还存在,不存在即卸载成功

5.扩展

MySQL默认端口为3306,但有时因为端口冲突等特别原因需要修改端口号,改一个配置即可:

vim /etc/my.cnf

追加端口配置:

port=3333

修改后需要重启服务:

systemctl restart mysqld.service

查看端口号:

mysql> show global variables like 'port';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| port          | 3333  |
+---------------+-------+
1 row in set (0.01 sec)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值