关系型数据库
MySQL是一种关系型数据库管理系统,采用了关系模型来组织数据的数据库,关系数据库将数据保存在不同的表中,用户通过查询 sql 来检索数据库中的数据。
yum 方式安装 mysql
安装默认版本的 mysql # yum -y install mysql-server # systemctl start mysqld 或者添加软件仓库,安装较新版本的 mysql # yum -y install https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm 关闭GPG 签名检查(开启GPG 签名检查:确保从该仓库安装的软件包是经过签名验证的,从而提高安全性) # sed -i 's/gpgcheck=1/gpgcheck=0/' mysql-community.repo # sed -i 's/gpgcheck=1/gpgcheck=0/' mysql-community-source.repo # yum install mysql-community-server # systemctl start mysqld.service获取初始密码并登录 mysql
# grep 'temporary password' /var/log/mysqld.log 2024-05-08T18:18:35.856539Z 1 [Note] A temporary password is generated for root@localhost: ige6?TWHte9H # mysql -u root -p修改 mysql用户 密码,5.7.9 之后和之前的修改密码方式有区别
修改root用户的登录密码并修改密码规则设置简单的密码,注意修改密码后执行 flush 命令刷新一下权限:
> ALTER USER 'root'@'localhost' IDENTIFIED BY 'ige6?TWHte9H'; > SHOW VARIABLES LIKE 'validate_password%'; > SET GLOBAL validate_password_policy=0; > SET GLOBAL validate_password_length=4; > ALTER USER 'root'@'localhost' IDENTIFIED BY '1234'; > flush privileges; > exit在 mysql 中查询一些基础信息
查看是否开放服务端口(3306)
> show variables like '%port%'; +--------------------------+-------+ | Variable_name | Value | +--------------------------+-------+ | innodb_support_xa | ON | | large_files_support | ON | | port | 3306 | | report_host | | | report_password | | | report_port | 3306 | | report_user | | | require_secure_transport | OFF | +--------------------------+-------+ 8 rows in set (0.00 sec)设置 root 用户为可远程访问
> select user,host from user; +---------------+-----------+ | user | host | +---------------+-----------+ | mysql.session | localhost | | mysql.sys | localhost | | root | localhost | +---------------+-----------+ > update user set host='%' where user='root';安装mysql8.0
操作环境:centos7.9
第一步:清理环境(避免冲突)
CentOS 7 默认自带 MariaDB,如果不卸载直接安装 MySQL可能会产生文件或服务冲突。
# 检查并停止 MariaDB服务: $ systemctl stop mariadb # 卸载 MariaDB 及相关包: $ yum remove -y mariadb* $ rm -rf /var/lib/mysql注意:如果服务器上有重要数据,请先备份 /var/lib/mysql 目录。
第二步:配置 MySQL 官方 YUM 源
# 下载并安装官方源 RPM 包(以 MySQL 8.0 为例) $ yum install -y https://dev.mysql.com/get/mysql80-community-release-el7-11.noarch.rpm # 验证源是否添加成功,若看到 mysql80-community 字样,说明源配置成功。 $ yum repolist enabled | grep mysql
第三步:安装 MySQL 服务
执行以下命令安装 MySQL 服务器端程序,YUM 会自动解决依赖关系:
$ yum install -y mysql-community-server注:如果需要安装客户端工具或开发库,可额外安装 mysql-community-client 和 mysql-community-devel。
第四步:启动服务并设置开机自启
# 启动 MySQL 服务 $ systemctl start mysqld #设置开机自启: $ systemctl enable mysqld # 查看运行状态(确保显示 active (running)): $ systemctl status mysqld第五步:获取临时密码并初始化
MySQL 8.0 首次启动时会生成一个随机临时密码,存储在日志文件中。
1)查找临时密码:
$ grep 'temporary password' /var/log/mysqld.log输出示例:A temporary password is generated for root@localhost: xxxx!,请复制冒号后的密码。
2)登录 MySQL:
# 输入上一步获取的临时密码。 $ mysql -uroot -p3)修改 Root 密码:
MySQL 8.0 强制要求密码符合安全策略(大小写+数字+特殊字符)。
> ALTER USER 'root'@'localhost' IDENTIFIED BY 'StrongPassword321!';4)执行安全初始化(推荐):
退出 MySQL 后,运行以下脚本可删除匿名用户、禁止 root 远程登录、移除测试库等,提升安全性:
$ mysql_secure_installation按提示操作即可,通常全部选择 Y。