数据库迁移,记录下如何在新的服务器上安装mysql,方便自己的同时也来方便他人😛😛😛
1、卸载MariaDB
1、查看rpm -qa|grep mariadb
复制代码
2、卸载yum remove mariadb 复制代码
3、删除数据目录 rm -rf /var/lib/mysql/*
复制代码
4、删除配置文件rm -f /etc/my.cnf 复制代码
2.下载对应的包
========
- 下载并安装MySQL官方的?Yum Repository
? wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm 复制代码
2.下载 MySQL 存储库配置
? yum -y install mysql57-community-release-el7-10.noarch.rpm
复制代码
- 下载mysql服务
yum -y install mysql-community-server 复制代码
![image.png](https://p9-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/778909db22704ddbb57ef6e041228fd4~tplv-k3u1fbpfcp-watermark.awebp?) 出现这样的提示表示安装成功
安装不成功,
------
> 第三步安装的时候可能会报错,如下:
![image.png](https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/3783b61f9de64c97b121500e55f54df8~tplv-k3u1fbpfcp-watermark.awebp?)
**解决办法如下:**
先执行: yum module disable mysql 再执行: yum install mysql-community-server 复制代码
> 然后就可以执行成功了🎉🎉🎉
2.?MySQL数据库设置
=============
- 查看mysql的位置
find / -name mysql 复制代码
![image.png](https://p1-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/ee768cd81b504b81894cbb5829327366~tplv-k3u1fbpfcp-watermark.awebp?)
> 出现如图的位置是mysql的默认安装位置
2.启动MySQL systemctl start mysqld.service??????? 复制代码
3.查看MySQL状态
? systemctl status mysqld.service???????
复制代码
```
![image.png](https://img-blog.csdnimg.cn/img_convert/ea6ade9a37f96e135e182595000b3deb.webp?x-oss-process=image/format,png)
```
4.获取初始密码
grep "password" /var/log/mysqld.log??
复制代码
```
![image.png](https://img-blog.csdnimg.cn/img_convert/31f47655fe037166835e51992a8fb5a0.webp?x-oss-process=image/format,png)
```
5. 进入数据库修改密码
mysql -u root -p xxxxx,
然后执行:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password'
复制代码
```
这里有个问题,新密码设置的时候如果设置的过于简单会报错:
![](https://img-blog.csdnimg.cn/img_convert/5e7e647b44a9f4fa0b543ee2a083d02a.webp?x-oss-process=image/format,png)
原因是因为MySQL有密码设置的规范,具体是与validate\_password\_policy的值有关:
![](https://img-blog.csdnimg.cn/img_convert/a7f7dc130a86269d0e70d86f2c55e149.webp?x-oss-process=image/format,png)
**修改密码规则**
```
1. set global validate_password_policy=0;
2. set global validate_password_length=1;
复制代码
```
? 再重新设置密码
```
??ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password'; ?
复制代码
```
退出重新登录
mysql -u用户名 -p密码
配置算是完成了
开放防火墙
=====
> 对于防火墙,大家都知道mysql的默认端口是3306,可以的话自己可以改一下。然后来开放端口。防止人家恶意攻击
```
1. 查看防火墙状态
systemctl status firewalld
复制代码
```
![image.png](https://img-blog.csdnimg.cn/img_convert/c39b1b04adff2fec30530990a5f47bbc.webp?x-oss-process=image/format,png)
```
2. 启动防火墙
systemctl start firewalld
复制代码
```
![image.png](https://img-blog.csdnimg.cn/img_convert/d9ced451af4ecb9617a7c88727d8219f.webp?x-oss-process=image/format,png)
```
3. 查看mysql的端口是否开放
firewall-cmd --zone=public --query-port=3306/tcp
// 开放的话结果是yes,否则是no
复制代码
- 开放端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent // 控制台会输出success 复制代码
5.重启防火墙
firewall-cmd --reload
//控制台输出sucess,就ok了
复制代码
```
可视化工具的登录授权
==========
> 是不是觉得,上面那些操作完成好后,就可以进行远程连接了,还不行呢
对远程客户端进行授权,否则就是连接失败,权限验证失败.
(1)SSH登录root管理员账户
(2)登录MySql
```
mysql -u root -p
Enter password:
复制代码
```
(3)执行授权命令
```
mysql> grant all privileges on *.* to root@'localhost' identified by '密码';
mysql> flush privileges;
复制代码
```
或
```
mysql> grant all privileges on *.* to root@'%' identified by '密码';
mysql> flush privileges;
复制代码
```
(4)退出再试
```
mysql> quit
Bye
复制代码
```
(5)再次登录
> 此后,数据库安装就完成了
|