1 环境准备
1.1 VM16和centos7
VMware历史版本下载
VMware最新版下载
这里下载需要注册账号,验证码输入不了的话在右上角把语言改为英语就好
centos7下载教学
激活码百度即可,或者这个
VM16安装centos7教学
1.2 mysql
直接安装mariadb
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。
开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。
# 安装
yum install mariadb-server mariadb
# 启动服务
systemctl start mariadb.service
# 查看3306端口,确认服务已开启
netstat -anptu |grep 3306
# 进入mysql 初次进去没密码,直接enter就好
mysql -u root -p
# 设置密码
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');
# 刷新权限
FLUSH PRIVILEGES;
# 设置外网访问权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456';
# 刷新权限
FLUSH PRIVILEGES;
# 1 防火墙添加3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 重载防火墙
firewall-cmd --reload
# 一般到这一步就可以了,如果还不行试试下面关闭防火墙
# 2 直接关闭防火墙(不建议)
systemctl stop firewalld.service
# 禁止firewall开机启动
systemctl disable firewalld.service
# 这里也可以新建用户,更安全一些
CREATE USER 'aimer'@'%' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON *.* TO 'aimer'@'%';
flush privileges;
2 连接
查看虚拟机ip地址
ifconfig
navicat连接mysql
3 其他小报错解决
3.1 中文编码问题
如果无法识别中文,显示为?,则应该是表的编码没有选择utf-8
解决方法1:选择数据编码格式为utf-8并重新建表
解决方法2:在终端中修改表的编码格式
# 进入Mysql
# 选择数据库
USE test;
# 查看现有表
SHOW TABLES;
# 查看目标表的编码,若与下图不同,则需修改
SHOW CREATE TABLE students;
# 修改表编码
ALTER TABLE students CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
# 再次查看表编码
SHOW CREATE TABLE students;