本文将详细介绍如何在没有网络连接的情况下,在CentOS7上安装和配置MySQL数据库
一、准备工作 在开始安装之前,确保你已经具备以下条件: 1.操作系统环境:确保你有一个运行CentOS7的服务器或虚拟机环境
2.系统权限:你需要拥有root权限,因为MySQL的安装和配置通常需要在root用户下进行
3.下载的安装包:从可靠的来源(如MySQL官方网站)下载适合你系统架构的MySQL离线安装包
二、下载并解压MySQL安装包 1.下载MySQL安装包 - 访问MySQL的官方网站(【MySQL Downloads】(https://dev.mysql.com/downloads/mysql/)),根据你的系统架构(如x86_64)选择适合的MySQL版本(如MySQL8.0.32)进行下载
下载的文件通常是一个压缩包,如`mysql-8.0.32-linux-glibc2.12-x86_64.tar.xz`
2.上传安装包至CentOS7系统 - 如果你在本地下载了安装包,需要通过scp或其他文件传输工具将其上传到CentOS7系统上
例如,使用scp命令: bash scp /path/to/mysql-8.0.32-linux-glibc2.12-x86_64.tar.xz root@centos7-ip:/usr/local/src/ - 将/path/to/替换为安装包的实际路径,`centos7-ip`替换为你的CentOS7系统的IP地址
3.解压安装包 - 登录到你的CentOS7系统,并导航到安装包所在的目录: bash cd /usr/local/src/ 解压安装包: bash tar -xvf mysql-8.0.32-linux-glibc2.12-x86_64.tar.xz - 解压后,你会得到一个名为`mysql-8.0.32-linux-glibc2.12-x86_64`的目录
为了方便,你可以将其重命名为`mysql-8.0.32`: bash mv mysql-8.0.32-linux-glibc2.12-x86_64 mysql-8.0.32 三、创建用户和目录 1.检查并创建用户和用户组 - 首先,检查系统中是否已经存在名为mysql的用户和用户组: bash cat /etc/group | grep mysql cat /etc/passwd | grep mysql 如果没有,则创建它们: bash groupadd mysql useradd -r -g mysql mysql 2.创建数据目录和日志目录 导航到MySQL解压目录,并创建数据目录和日志目录: bash cd /usr/local/src/mysql-8.0.32 mkdir data log 3.更改目录所有者 - 将MySQL解压目录、数据目录和日志目录的所有者更改为`mysql`用户: bash chown -R mysql:mysql /usr/local/src/mysql-8.0.32 四、配置MySQL 1.创建MySQL配置文件 - 在/etc目录下创建MySQL的配置文件`my.cnf`: bash vim /etc/my.cnf 在文件中添加以下内容,注意修改对应的路径: ini 【mysqld】 bind-address=0.0.0.0 port=3306 user=mysql basedir=/usr/local/src/mysql-8.0.32 datadir=/usr/local/src/mysql-8.0.32/data socket=/tmp/mysql.sock log-error=/usr/local/src/mysql-8.0.32/log/mysql.err pid-file=/usr/local/src/mysql-8.0.32/data/mysql.pid character-set-server=utf8mb4 symbolic-links=0 explicit_defaults_for_timestamp=true 2.初始化MySQL 导航到MySQL的bin目录,并执行初始化命令: bash cd /usr/local/src/mysql-8.0.32/bin ./mysqld --user=mysql --basedir=/usr/local/src/mysql-8.0.32 --datadir=/usr/local/src/mysql-8.0.32/data --initialize - 初始化完成后,你可以在`/usr/local/src/mysql-8.0.32/log/mysql.err`文件中找到MySQL的默认初始密码
五、设置MySQL服务 1.复制启动脚本 将MySQL的启动脚本复制到系统的服务目录中: bash cp /usr/local/src/mysql-8.0.32/support-files/mysql.server /etc/rc.d/init.d/mysqld 2.增加服务控制脚本执行权限 为启动脚本增加执行权限: bash chmod +x /etc/rc.d/init.d/mysqld 3.添加MySQL服务到系统服务 - 使用chkconfig命令将MySQL服务添加到系统服务中,并设置其在系统启动时自动启动: bash chkconfig --add mysqld chkconfig mysqld on 4.启动MySQL服务 使用以下命令启动MySQL服务: bash service mysqld start - 或者使用systemctl命令(如果你的系统使用systemd作为初始化系统): bash systemctl start mysqld 5.验证MySQL服务是否启动成功 使用以下命令检查MySQL服务是否启动成功: bash ps aux | grep mysqld 或者: bash systemctl status mysqld 六、配置MySQL环境变量(可选) 为了方便在命令行中访问MySQL,你可以将MySQL的`bin`目录添加到系统的`PATH`环境变量中
编辑`/etc/profile`文件,并添加以下内容: bash export PATH=$PATH:/usr/local/src/mysql-8.0.32/bin 保存文件后,执行以下命令使更改生效: bash source /etc/profile 七、登录MySQL并修改密码 1.登录MySQL 使用默认初始密码登录MySQL: bash mysql -u root -p 输入默认初始密码后,你将进入MySQL shell
2.修改root用户密码 为了安全起见,建议立即修改root用户的密码: sql ALTER USER root@localhost IDENTIFIED WITH mysql_native_password BY new_password; FLUSH PRIVILEGES; - 将new_password替换为你希望设置的新密码
3.设置root用户远程访问权限(可选) - 如果你需要从远程主机访问MySQL数据库,可以为root用户设置远程访问权限: sql CREATE USER root@% IDENTIFIED BY new_password; GRANT ALL PRIVILEGES ON- . TO root@% WITH GRANT OPTION; FLUSH PRIVILEGES; - 注意:允许root用户从远程访问可能会带来安全风险,请根据你的实际需求和安全策略进行配置
4.退出MySQL 使用以下命令退出MySQL shell: sql EXIT; 八、创建自定义用户和数据库(可选) 1.创建自定义用户 使用以下命令创建