目录
- 一、彻底卸载 MySQL(不保留数据)
- 二、安装 MySQL
一、彻底卸载 MySQL(不保留数据)
若之前装过MySQL,需先删除再进行安装:
-
查找已经安装的mysql:
rpm -qa | grep -i mysql
-
删除MySQL:
yum -y remove MySQL-*
删除mysql常用rpm -e 的命令,但这样表面上删除了mysql,mysql的一些残余程序仍然存在,并且通过第一步的方式也查找不到残余,而yum命令比较强大,可以完全删除mysql.(ps:用rpm删除后再次安装的时候会提示已经安装了,这就是rpm没删除干净的原因)
-
查找mysql的一些目录:
sqlfind / -name mysql
-
把所有出现的目录统统删除
可以使用
rm -rf 路径
,删除时请注意,一旦删除无法恢复。rm -rf /etc/my.cnf
-
删除配置文件:
rm -rf /root/.mysql_sercret
删除 MySQL 的默认密码,如果不删除,以后安装 MySQL 这个
sercret
中的默认密码不会变,使用其中的默认密码就可能会报类似 Access denied for user ‘root@localhost’ (using password:yes) 的错误。五步完成之后,即可将 MySQL 全部删除干净。
最后一并卸载Centos7自带的 MariaDB,以免后续出错。
rpm -qa|grep mariadb // 查询出来已安装的mariadb
rpm -e --nodeps mariadb-* //删除相关包
或者用此命令删除:
rpm -e --nodeps 文件名 // 卸载mariadb,文件名为上述命令查询出来的文件
二、安装 MySQL
-
安装wget
yum -y install wget
-
下载mysql的源
wget http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
-
安装yum库
yum localinstall -y mysql57-community-release-el7-7.noarch.rpm
-
安装MySQL
yum install -y mysql-community-server
-
启动MySQL服务
systemctl start mysqld.service
-
MySQL5.7在安装时第一次安装后会初始化一个随机密码,以下为查看初始随机密码的方式
grep 'temporary password' /var/log/mysqld.log
-
修改密码
通过前面生成的初始随机密码登录mysql后修改密码
进入数据库:
mysql -u root -p
进入后,如下图:
输入修改密码的命令:ALTER USER 'root'@'localhost' IDENTIFIED BY 'your password';
注:mysql 5.7 默认密码策略要求密码必须是 大小写字母 ,数字 ,特殊字母的组合,至少8位
-
设置可远程访问
8.1 服务器开放 3306 端口:
完成前面的步骤后,只是可以在服务器上访问,Mysql默认是不允许远程登录的,所以必须设置下。并且服务器要开放
3306
端口,以华为云为例,在控制台找到你的服务器,右边点击-设置-更改安全组;点击新建安全组
点击你使用的安全组进入设置:
8.2 设置mysql可以被远程连接
在mysql中运行命令:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your password' WITH GRANT OPTION;
-
远程连接
用 Navicat 或类似工具连接服务器上的MySql。
打开 Navicat 新建 MySql 连接:点击-连接-MySql
填写自己服务器ip和数据库密码即可