【声明】
- 1、参考黑马教程 https://www.bilibili.com/video/BV1UQ4y1P7Xr?from=search&seid=419705943532181401
- 2、参考文章:Centos8安装mysql8.0
目录
官网下载MySQL安装包
- 选择版本
- 下载对应安装包
- 将下载的文件传送到/usr/local/Mysql8中
安装MySQL
卸载 centos 中预安装的 mysql
rpm -qa | grep -i mysql
- 如果安装了,则卸载
rpm -e 安装的mysql --nodeps
安装依赖包
yum -y install libaio.so.1 libgcc_s.so.1 libstdc++.so.6 libncurses.so.5 --setopt=protected_multilib=false
安装RPM包 (注意安装顺序)
rpm -ivh 安装包
查看是否安装成功
ps -ef | grep mysql
mysqladmin --version
初始化mysql
- 创建数据文件目录和mysql系统数据库 产生随机root密码
mysqld --initialize
/var/lib/mysql目录权限授权
chown -R mysql:mysql /var/lib/mysql/
启动mysql服务
- 启动
systemctl start mysqld
- 查看mysql服务
ps -ef | grep mysql
查看初始化随机生成的root密码
cat /var/log/mysqld.log | grep password
安全设置
mysql_secure_installation
- 1.是否设置验证密码组件,这个我没有查看到底是什么,因为没用到,我直接选择No;
- 2.是否更改root密码,输入y会重置新的密码,我们已经更改了密码,选择No;
- 3.是否删除匿名用户,建议是删除,选择y;
- 4.是否禁止root远程登录,建议禁止,选择y;(等等,为什么禁止呢,我们不是要远程登录呢么?是的,后边会介绍Navicat登录的配置,暂时先为了安全性考虑设置为y)
- 5.是否删除test数据库,选择y;
- 6.是否重新加载权限表,选择y。
- 【注】:参考 Centos8安装mysql8.0 (作者:feng_shede)
安全性配置结束,登录据库的,键入命令:
mysql -uroot -p
设置root用户的localhost为%(用于连接navicat)
use mysql select user,host from user; update user set host = '%' where user = 'root'; flush privileges; ALTER USER 'root'@'%' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER; -- 更改加密方式 ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; -- 更新用户密码 flush privileges; -- 刷新权限
停止、重启和查看mysql服务
systemctl stop mysqld -- 停止服务 systemctl restart mysqld -- 重启服务 systemctl status mysqld -- 查看服务
mysql的相关安装目录文件
/usr/share/mysql //配置文件目录 /var/lib/mysql //数据库文件存放目录 /etc/my.cnf //mysql的启动配置文件 mysqld //是后台守护进程,即mysql daemon mysql //是客户端命令行
需关闭防火墙或者开放3306端口
service iptables stop #暂时关闭 chkconfig iptables off #设置成开启不自启(这个命令没有测试,可以自己试一下,centos8应该是不支持chkconfig 命令了) /sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT #开启3306端口 /etc/rc.d/init.d/iptables save #保存配置 /etc/rc.d/init.d/iptables restart #重启服务