CentOS 7 安装 MySQL
一、MySQL 的版本
- MySQL Community Server 社区版本
- MySQL Enterprise Edition 企业版本
- MySQL Cluster 集群版
- MySQL Cluster CGE 高级集群版
二、下载 MySQL
下载地址:https://dev.mysql.com/downloads/mysql/
1、下载 mysql-8.0.34-1.el7.x86_64.rpm-bundle.tar
mysql-8.0.34-1.el7.x86_64.rpm-bundle.tar
# 8.0.34 版本号
# 1 发布次数
# el7 系统版本
# x86_64 架构
# rpm-bundler.tar 包含一个或多个 rpm 包
解压之后的文件列表
2、安装要求
- 需要有 /tmp 文件夹的读写权限。是因为在安装的时候,mysql 会在 /tmp 下新建 tmp_db 文件。
chmod -R 777 /tmp
- 检查依赖
rpm -qa | grep libaio
rpm -qa | hrep net-tools
3、rpm package 的安装顺序
- mysql-community-common MySQL服务端和客户端的通用库文件
- mysql-community-client-plugins
- mysql-community-libs
- mysql-community-client
- mysql-community-icu-data-files 为 MySQL 数据库提供了处理字符集、排序、比较和国际化相关功能所需的数据和规则 (8.0.34 需要安装这个)
- mysql-community-server
# -i , --install 安装软件包
# -v , --verbose 详细信息输出
# -h , --hash 软件包安装的时候列出哈希标记,展示进度条
rpm -ivh mysql-community-xxx.rpm
4、查看 MySQL 的版本
mysql --version
mysqladmin --version
5、服务的初始化
MySQL 数据目录 的初始化和生成初始的数据库文件。
mysqld --initialize --user=mysql
1. 初始化数据目录。
通过 cat /etc/my.cnf
可以查看到 datair
所配置的目录。这个目录就是 MySQL
的数据目录。在安装 MySQL
的时候,就会创建这个目录。但是里面什么内容都没有。
2. 指定用户
mysqld --user=mysql
指定 MySQL
服务运行时所使用的系统用户。确保 MySQL
进程有足够的权限来访问数据目录和执行必要的操作。 MySQL
在安装时会默认创建 mysql
用户。
3. 生成临时密码
生成 MySQL
中 root
用户的密码。会把密码写在 /var/log/mysqld.log
中。通过 cat /var/log/mysqld.log | grep password
命令来查看临时密码。
6、启动 MySQL 服务
# .service 后缀加不加都行
systemctl start mysqld.service
7、查看 MySQL 是否自启动
systemctl list-unit-files | grep mysqld.service
如果不为自启动,可以通过使用下面的命令来设置为自启动
systemctl enable mysqld.service
取消自启动的命令
systemctl disable mysqld.service
8、登录 MySQL
mysql -uroot -p
# 输入密码
使用临时密码登录时,需要重新修改密码。不然执行任何语句都会失败。
9、修改密码
alter user 'root'@'localhost' identified by 'root';
会出现报错
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
解决方法:在 my.cnf
中加入下面的配置,并重启 MySQL 服务即可。
validate_password.check_user_name=OFF
validate_password.length=4
validate_password.mixed_case_count=0
validate_password.number_count=0
validate_password.policy=0
validate_password.special_char_count=0