HCRM博客

如何在CentOS 7上轻松搭建MySQL环境?

Centos 7上配置MySQL是一个相对复杂的过程,但通过详细的步骤和清晰的逻辑,可以顺利完成,本文将详细介绍如何在CentOS 7上安装和配置MySQL,包括卸载MariADB、下载MySQL资源包、解压安装、配置文件、初始化数据库、启动服务以及设置远程访问等步骤,以下是详细内容:

一、准备工作

如何在CentOS 7上轻松搭建MySQL环境?-图1
(图片来源网络,侵权删除)

更新系统并安装必要的编译工具

确保你的CentOS 7系统已更新到最新状态,并安装了必要的编译工具,可以使用以下命令进行更新和安装工具:

  • sudo yum update y
  • sudo yum install y gccc++ cmake make

卸载MariaDB

CentOS 7默认自带MariaDB,需要先卸载它以避免冲突:

  • sudo systemctl stop mariadb.service
  • sudo yum remove mariadb mariadbserver mariadbclient mariadblibs y
  • sudo rm rf /var/lib/mysql

检查旧版本MySQL

确认系统中没有旧版本的MySQL:

  • rpm qa | grep mysql

如果有输出,显示的MySQL不是想要的版本,则需卸载:

  • sudo systemctl stop mysqld
  • sudo yum remove mysql mysqlserver mysqllibs mysqlclient y

二、下载并安装MySQL

下载MySQL资源包

从MySQL官方网站下载所需版本的MySQL压缩包,假设我们要安装MySQL 8.0.29:

如何在CentOS 7上轻松搭建MySQL环境?-图2
(图片来源网络,侵权删除)
  • wget https://cdn.mysql.com/archives/mysql8.0/mysql8.0.29.tar.gz
  • tar xzvf mysql8.0.29.tar.gz
  • cd mysql8.0.29

编译安装MySQL

配置编译参数并编译安装:

  • cmake \
  • DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
  • DDEFAULT_CHARSET=utf8mb4 \
  • DDEFAULT_COLLATION=utf8mb4_unicode_ci \
  • DWITH_EXTRA_CHARSETS=all \
  • DWITH_MYISAM_STORAGE_ENGINE=1 \
  • DWITH_INNOBASE_STORAGE_ENGINE=1 \
  • DWITH_PARTITION_STORAGE_ENGINE=1 \
  • DWITH_READLINE=1 \
  • DWITH_ZLIB=system \
  • DWITH_LIBWRAP=0 \
  • DWITH_DEBUG=0 \
  • DENABLED_LOCAL_INFILE=1 \
  • DWITH_SSL=system \
  • DWITH_EMBEDDED_SERVER=1 \
  • DWITH_PLUGIN_DIR="/usr/local/mysql/lib/plugin" \
  • .
  • make j$(nproc)
  • sudo make install

三、配置MySQL

创建用户组和用户

创建MySQL用户和组,以便管理MySQL服务:

  • sudo groupadd mysql
  • sudo useradd r g mysql mysql

初始化MySQL数据库

初始化MySQL数据目录并设置权限:

  • sudo chown R mysql:mysql /usr/local/mysql
  • sudo /usr/local/mysql/bin/mysqld initialize user=mysql

创建MySQL服务文件

为了让MySQL服务在系统启动时自动启动,需要创建一个systemd服务文件:

  • sudo cat > /etc/systemd/system/mysqld.service <<EOF
  • [Unit]
  • Description=MySQL Server
  • After=network.target
  • [Service]
  • User=mysql
  • Group=mysql
  • ExecStart=/usr/local/mysql/bin/mysqld_safe
  • Restart=always
  • RestartSec=10
  • [Install]
  • WantedBy=multiuser.target
  • EOF

然后启用并启动MySQL服务:

如何在CentOS 7上轻松搭建MySQL环境?-图3
(图片来源网络,侵权删除)
  • sudo systemctl enable mysqld
  • sudo systemctl start mysqld

登录并设置root密码

登录MySQL并设置root密码:

  • sudo /usr/local/mysql/bin/mysql u root
  • ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
  • FLUSH PRIVILEGES;
  • EXIT;

开放防火墙端口

如果系统有防火墙,确保3306端口是打开的:

  • sudo firewallcmd zone=public addport=3306/tcp permanent
  • sudo firewallcmd reload

四、配置远程访问(可选)

如果需要允许远程访问MySQL,可以执行以下命令:

  • mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
  • FLUSH PRIVILEGES;

至此,所有配置全部完毕,你可以通过sqlyog或者其他方式登录MySQL了。

五、常见问题解答(FAQ)

Q1:如何更改MySQL的数据存放目录?

A1:可以在my.cnf文件中修改datadir参数,datadir=/data/mysql8_data,然后重启MySQL服务即可。

Q2:如何更改MySQL的字符集?

A2:在my.cnf文件中添加或修改charactersetserver参数,charactersetserver=utf8mb4,然后重启MySQL服务。

Q3:如何优化MySQL的性能?

A3:根据实际负载情况调整my.cnf文件中的参数,如max_connectionstable_open_cachesort_buffer_size等,可以参考官方文档或相关性能调优指南。

Q4:如何备份MySQL数据?

A4:可以使用mysqldump工具进行备份,mysqldump u root p database_name > backup.sql,恢复数据时使用mysql u root p database_name < backup.sql

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/20637.html

分享:
扫描分享到社交APP
上一篇
下一篇