前言
因为云数据库连接太慢(主要是买的19.9一年的),博客主题配置请求经常超时,并且需要等待几秒,体验很不佳,所以决定在服务器上安装Myql数据库
安装Mysql
1. 安装 mysql 源
1.1 下载yum 源 rpm 安装包
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
1.2 安装 mysql 源
yum localinstall mysql57-community-release-el7-11.noarch.rpm
2. 安装 MySQL
yum install -y mysql-community-server
3. 启动 MySQL 服务
启动服务
systemctl start mysqld
用 systemctl status 查看 MySQL 状态
systemctl status mysqld
成功图
到这里就是安装成功了
配置
1. 设置开机自启
systemctl enable mysqld
2. 修改 root 本地账户密码
2.1 查看默认密码
grep 'temporary password' /var/log/mysqld.log
2.2 登录Mysql
mysql -uroot -p
2.3 修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'editPassWordxxx';
注意:mysql 5.7 默认安装了密码安全检查插件(validate_password),默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。否则会提示 ERROR 1819 (HY000): Your password does not satisfy the current policy requirements 错误
3. 添加远程登录用户
默认只允许root帐户在本地登录,因为我有远程连接需求,所以需要配置
use mysql;
UPDATE user SET Host='%' WHERE User='root';
flush privileges;
这时候就可以通过远程数据库工具连接了
4.设置默认编码为 utf8mb4
退出sql
exit
mysql 安装后默认不支持中文,需要修改编码。
修改 /etc/my.cnf 配置文件
[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
[mysqld]
collation-server = utf8mb4_general_ci
init-connect='SET NAMES utf8mb4'
character-set-server = utf8mb4
重启mysql服务,查询编码
systemctl restart mysqld
mysql -uroot -p
show variables like 'character%';
到此Mysql配置完成
迁移数据
我用的Navicat工具连接,所以导入数据很简单
- 连接两个服务器
- 在需要导出的数据库,右键【转储SQL文件/结构与数据】
- 在导入连接处新建数据库,由于我的博客系统原因,我的字符集为'utf8mb4',排序规则: 'utf8mb4_bin'
- 若原本数据库排序规则一样,则跳过此步;不然就要将导出sql文件里的排序规则替换;比如原规则为"utf8mb4_general_ci",那就要将文件里的"utf8mb4_general_ci"全部替换为你的新排序规则
- 在新建数据库处右键[导入sql],选择文件,开始
- 断开连接在重新连接,就可以看到迁移的数据了
结语
这一次还是运到了一些小问题的,不过都顺利解决了,相信你们也会成功完成.
Q.E.D.