CentOS 离线安装 MySQL 详细指南
在 CentOS 上离线安装 MySQL 是一项需要细致规划和执行的任务,特别是当没有互联网连接时,本文将详细介绍如何在 CentOS 系统上进行 MySQL 的离线安装,包括准备工作、安装步骤以及常见问题解答。
准备工作
1、下载必要的软件包
libaio 安装包:用于提高异步 I/O 操作的效率,下载地址为:[libaio0.3.10913.el7.x86_64.rpm](http://mirror.centos.org/centos/7/os/x86_64/Packages/libaio0.3.10913.el7.x86_64.rpm)。
MySQL 安装包:建议从官网下载所需版本的压缩包,如mysql5.7.36linuxglibc2.12x86_64.tar.gz
,并确保选择适用于 Red Hat Enterprise Linux 7 (x86, 64bit) 的版本。
2、传输安装包
使用远程传输工具(如 mobaxterm、filezilla、xftp 等)或虚拟机共享文件夹功能,将下载好的安装包传输到 CentOS 系统中的指定目录(如/usr/local/src
)。
安装步骤
1、解压安装包
tar zxvf mysql5.7.36linuxglibc2.12x86_64.tar.gz mv mysql5.7.36linuxglibc2.12x86_64 mysql
2、安装 libaio 包
rpm ivh libaio0.3.10913.el7.x86_64.rpm
3、创建用户组和用户
groupadd mysql useradd r g mysql mysql
4、创建数据目录并设置权限
mkdir /usr/local/src/mysql/data chown R mysql:mysql /usr/local/src/mysql chgrp R mysql /usr/local/src/mysql
5、创建配置文件
vi /etc/my.cnf
添加以下内容:
[mysqld] port=3306 user=mysql basedir=/usr/local/src/mysql datadir=/usr/local/src/mysql/data socket=/usr/local/src/mysql/data/mysql.sock logerror=/var/log/mysqld.log pidfile=/var/run/mysqld/mysqld.pid bindaddress=0.0.0.0 symboliclinks=0 charactersetserver=utf8 init_connect='SET collation_connection = utf8_unicode_ci' init_connect='SET NAMES utf8' collationserver=utf8_unicode_ci [client] port = 3306 socket=/usr/local/src/mysql/data/mysql.sock defaultcharacterset = utf8 [mysql] defaultcharacterset = utf8
6、初始化数据库
/usr/local/src/mysql/bin/mysqld initialize user=mysql basedir=/usr/local/src/mysql datadir=/usr/local/src/mysql/data lc_messages_dir=/usr/local/src/mysql/share
7、查看初始密码
cat /var/log/mysqld.log | grep "temporary password"
记录下临时生成的 root@localhost 密码。
8、配置快捷启动
创建mysql.sock
文件并设置权限:
cd /usr/local/src/mysql/data/ touch mysql.sock chmod 777 mysql.sock chown mysql:mysql mysql.sock
建立软链接以实现快捷启动:
ln s /usr/local/src/mysql/supportfiles/mysql.server /etc/rc.d/init.d/mysqld
9、启动服务
/usr/local/src/mysql/supportfiles/mysql.server start
10、配置环境变量
编辑/etc/profile
文件,添加以下内容:
export PATH=$PATH:/usr/local/src/mysql/bin
然后执行source /etc/profile
使更改生效。
11、修改默认密码并开放远程连接
登录 MySQL:
mysql u root p
修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
开放远程连接:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '新密码' WITH GRANT OPTION; FLUSH PRIVILEGES;
常见问题解答(FAQs)
Q1: 如何修改 MySQL 的默认字符集?
A1: 在my.cnf
配置文件中添加或修改以下行:
charactersetserver=utf8 collationserver=utf8_unicode_ci
然后重启 MySQL 服务。
Q2: 如果初始化时报错缺少libnuma.so.1
,如何解决?
A2: 如果报错提示缺少libnuma.so.1
,可以执行以下命令安装:
yum install numactl.x86_64 y
Q3: 如何设置 MySQL 开机自启动?
A3: 确保在/etc/rc.d/init.d/
目录下有mysqld
服务脚本,并且执行以下命令:
chkconfig add mysqld
Q4: 如何测试 MySQL 是否成功安装并运行?
A4: 登录 MySQL,并检查版本信息:
mysql u root p SHOW VARIABLES LIKE 'version';
通过以上步骤,你应该能够在 CentOS 系统上成功离线安装并配置 MySQL,如果在安装过程中遇到任何问题,请参考官方文档或相关社区寻求帮助。