MySQL,作为一款开源的关系型数据库管理系统,因其高性能、高可靠性和易用性,成为了众多开发者和企业的首选
本文将详细介绍如何在CentOS系统上安装MySQL 8,帮助读者轻松搭建起自己的数据库环境
一、前期准备 在安装MySQL 8之前,我们需要确保系统已经更新到最新版本,以避免潜在的兼容性问题
同时,如果系统中已经安装了旧版本的MySQL或其他与MySQL冲突的数据库系统(如MariaDB),需要先进行卸载
1.更新系统 通过运行以下命令,我们可以轻松更新CentOS系统: bash sudo yum update -y 2.卸载旧版本MySQL或MariaDB 使用以下命令检查是否已安装MySQL或MariaDB: bash rpm -qa | grep -i mysql rpm -qa | grep mariadb 如果已安装,使用`yumremove`命令进行卸载
例如,卸载MariaDB的命令如下: bash rpm -e --nodeps mariadb-libs- 注意:卸载过程中可能需要使用`--nodeps`选项来忽略依赖关系
但请谨慎使用,以免误删其他重要软件包
3.创建MySQL用户和组 为了确保MySQL服务的安全运行,我们需要为其创建一个专门的用户和组: bash groupadd mysql useradd -r -g mysql mysql 二、安装MySQL 8 MySQL官方提供了用于CentOS的Yum Repository,通过添加这个存储库,我们可以轻松地安装和管理MySQL软件包
以下是详细的安装步骤: 1.添加MySQL Yum Repository 执行以下命令将MySQL存储库添加到系统中: bash sudo yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm 注意:这里的URL可能因MySQL版本的不同而有所变化,请确保使用与您的CentOS版本和MySQL版本相匹配的存储库
2.安装MySQL 8 添加了MySQL存储库后,运行以下命令以安装MySQL 8: bash sudo yum install mysql-community-server -y 安装过程中,系统可能会询问是否要导入MySQL的GPG密钥,确认后继续安装
三、配置MySQL 8 安装完成后,我们需要对MySQL进行一些必要的配置,以确保其能够正常运行并满足我们的需求
1.启动MySQL服务 安装完成后,我们需要启动MySQL服务,并设置它在系统启动时自动启动: bash sudo systemctl start mysqld sudo systemctl enable mysqld 2.查找临时密码 MySQL 8在安装过程中会自动生成一个临时密码,我们可以在MySQL的错误日志中找到它: bash sudo grep temporary password /var/log/mysqld.log 记下这个临时密码,我们将在后续步骤中使用它
3.安全配置MySQL 使用以下命令进入MySQL的安全配置向导: bash sudomysql_secure_installation 按照提示,设置MySQL root用户的新密码,并回答其他安全性问题
这将帮助我们保护MySQL数据库免受潜在的威胁
在设置密码时,请注意MySQL对密码复杂度的要求
如果设置的密码不符合要求,系统将提示您重新输入
4.配置MySQL开机自启 为了确保MySQL在系统启动时能够自动运行,我们可以使用以下命令将其设置为开机自启: bash sudo systemctl enable mysqld 5.配置MySQL配置文件 MySQL的配置文件通常位于`/etc/my.cnf`或`/etc/mysql/my.cnf`
我们可以根据需要修改这个文件来配置MySQL的行为
例如,我们可以修改`【mysqld】`部分来设置端口号、数据目录、日志目录等: ini 【mysqld】 port=3306 basedir=/usr/local/mysql8.0 datadir=/data/mysql/data log-error=/data/mysql/logs/error.log socket=/data/mysql/tmp/mysql.sock pid-file=/data/mysql/tmp/mysql.pid character-set-server=utf8 lower_case_table_names=1 innodb_log_file_size=1G default-storage-engine=INNODB 注意:这里的路径和配置选项可能因您的安装方式和需求而有所不同
请确保使用正确的路径和配置选项
6.初始化MySQL 在某些情况下,我们可能需要手动初始化MySQL
这可以通过运行以下命令来完成: bash sudo mysqld --initialize --user=mysql --basedir=/usr/local/mysql8.0 --datadir=/data/mysql/data 初始化过程中,MySQL会生成一些必要的系统表和文件
完成后,我们可以在指定的数据目录中找到它们
四、登录MySQL并管理数据库 现在我们已经成功安装了MySQL 8,并进行了必要的配置
接下来,我们可以登录MySQL并开始管理我们的数据库了
1.登录MySQL 使用以下命令登录到MySQL数据库: bash mysql -u root -p 输入在安全性配置期间设置的MySQL root密码
成功登录后,您将看到MySQL提示符
2.管理数据库 登录到MySQL后,我们可以使用SQL语句来管理数据库
例如,创建新数据库、创建表、插入数据等
以下是一些常用的SQL语句示例: - 创建新数据库: ```sql CREATE DATABASE mydatabase; ``` - 创建表: ```sql USE mydatabase; CREATE TABLE mytable ( id INT AUTO_INCREMENT PRIMARY KEY, nameVARCHAR(25 NOT NULL, age INT NOT NULL ); ``` - 插入数据: ```sql INSERT INTO mytable (name,age)VALUES (Alice, 30),(Bob, 25); ``` - 查询数据: ```sql SELECTFROM mytable; ``` 3.修改MySQL root密码 如果需要修改MySQL root用户的密码,可以使用以下命令: sql ALTER USER root@localhost IDENTIFIED BY newpassword; 其中`newpassword`是您要设置的新密码
请注意,MySQL对密码复杂度有一定的要求,因此请确保您设置的密码符合要求
五、开启MySQL的远程访问 默认情况下,MySQL只允许本地访问
如果需要从远程计算机访问MySQL数据库,我们需要进行一些额外的配置
1.修改MySQL配置文件 首先,我们需要修改MySQL的配置文件,允许来自远程计算机的连接
这可以通过修改`【mysqld】`部分中的`bind-address`选项来实现: ini 【mysqld】 bind-address = 0.0.0.0 将`bind-address`设置为`0.0.0.0`表示允许来自任何IP地址的连接
如果只想允许来自特定IP地址的连接,可以将该选项设置为该IP地址
2.创建远程用户并授权 接下来,我们需要创建一个允许从远程计算机连接的MySQL用户,并为