centos7离线安装mysql

                                 centos7安装mysql5.7

1.安装之前准备工作:

    下载对应的安装包https://pan.baidu.com/s/1rLuiACHh-zr-mUeHss6JOw 提取码:x126

    包下面有对应的一键安装脚本,但是如果可能需要改动下里面的脚本还有配置文件才能适用你自己的要求,最好先看看系统的挂载点再改配置。如果不知道可以怎么改,可以留言。

   以下是在安装centos7后纯净的系统。

   mysql对于权限的要求,会因为权限问题出现启动不了的情况。

2.卸载centos7中默认的mariadb数据库。

 1.执行命令查看是否安装 

rpm -qa|grep mariadb

 #卸载对应的版本

rpm -e --nodeps 

 3.再次执行:

   rpm -qa|grep mariadb 查看卸载完成没有

 4.关闭selinux

    selinux会限制文件的访问权限,在安装的过程前最好关闭

setenforce 0  

这个命令是临时关闭,如果需要全部关闭,可以在网上找找,有很多。

 

3.开始安装mysql

    1.安装脚本讲解       

#!/bin/sh
install_log=install.log

## install rpm
rpm -Uvh --force --nodeps ./perl/*rpm
rpm -Uvh --force --nodeps ./net-tools/*rpm

## 1, MySQL installing
echo "#######1:MySQL installing ..." 2>&1 | tee -a $install_log
rpm -hvi  mysql-community-common-5.7.13-1.el7.x86_64.rpm --force --nodeps 2>&1 | tee -a $install_log
rpm -hvi  mysql-community-libs-5.7.13-1.el7.x86_64.rpm --force --nodeps 2>&1 | tee -a $install_log
rpm -hvi  mysql-community-client-5.7.13-1.el7.x86_64.rpm --force --nodeps 2>&1 | tee -a $install_log
rpm -hvi  mysql-community-server-5.7.13-1.el7.x86_64.rpm  --force --nodeps 2>&1 | tee -a $install_log
echo "RPMs intalled ok!" 2>&1 | tee -a $install_log
## 2,mysql config

##到这里基本上完成了,如果不需要更换数据存储地址
##将默认数据地址换到替换地址(后面的操作建议手动来)
##如果不改后面会修改mysql的数据存放地址

\cp my_before.cnf /etc/my.cnf -f


mv /var/lib/mysql /usr/mysqlData -b
##上面移动的地址建议提前建好,并给上755的权限,本身还有子目录的
systemctl restart mysqld  2>&1 | tee -a $install_log
mysql -uroot < init.sql 2>&1 | tee -a $install_log


\cp my.cnf /etc/my.cnf -f
systemctl restart mysqld  2>&1 | tee -a $install_log
systemctl enable mysqld
echo "MySQL install end !"   2>&1 | tee -a $install_log

2.my.cnf配置文件

   所有的系统配置文件都在etc目录下面。mysql会到这个目录下面找my.cnf这个文件,并且在启动的时候加载它。

  在第一次启动前需要设置为无密码登录状态:skip-grant-tables=1 注意位置

  [mysqld]
skip-grant-tables=1
#skip-grant-tables
#skip-networking
lower_case_table_names=1

mysql5.7版本对数据库表名大小写有限制,可以把这个限制去掉

lower_case_table_names=1

3.执行初始化init.sql文件

   这个文件主要是设置root账户的默认密码

                            开放root远程连接的权限

4.开放3306端口:

 如果只是自己学习用的可以把防火墙的3306端口开放出来,生产环境就不建议了。

怎么开放就不写了,搜一下就知道

还有比较大的坑就是修改数据存放地址在my.cnf文件里面。

我遇到的坑主要在这,具体的不好讲。大致问题就是文件夹和文件的权限问题导致mysql启动的时候各种报错。

my.cof配置错误日志的地址应该是。可以去看看的报错信息,然后再到网上搜。

log-error=/var/log/mysqld.log

最后如果实在搞不定,可以在留言。同时怕有写错的,希望指正

 

 

    

<think>好的,我需要帮助用户在CentOS 7系统上离线安装MySQL。根据用户提供的引用内容,我需要整理出具体的步骤,并且确保引用正确。 首先,用户提到了四个引用,其中引用[1]、[2]、[4]都涉及CentOS7离线安装MySQL的不同版本,比如5.7和8.4.3。引用[3]提到了安装依赖如autoconf、Perl和openssl,这可能也是步骤的一部分。 用户需要的是教程或步骤,所以我需要将这些引用中的信息整合起来,形成连贯的安装流程。可能的结构包括:下载安装包、安装依赖、安装MySQL组件、初始化配置、设置权限、配置防火墙等。 需要注意的是,不同版本的MySQL安装步骤可能略有不同,比如MySQL 5.7和8.0的安装包名称和依赖可能不同。用户提供的引用中有提到使用rpm安装,所以步骤应该基于rpm包安装。 另外,引用[4]中提到了具体的rpm安装命令顺序,这很重要,因为依赖关系必须按顺序安装。引用[2]提到下载官网的安装包和其他资源,可能需要用户提前下载好所有相关的rpm文件。 还有,引用[1]和[4]都提到了启动MySQL服务和修改root密码的步骤,这部分需要包含在初始化配置中。防火墙的设置也是必要的,确保MySQL可以访问。 可能遇到的问题包括依赖缺失,如libaio或numactl,这时候需要用户提前安装这些依赖包。引用[3]中提到的安装autoconf和Perl可能属于依赖安装的一部分,但需要确认是否是必须的,或者是否适用于所有情况。 需要确保步骤清晰,每个部分都正确引用来源,比如安装顺序参考引用[4],下载安装包参考引用[2],依赖安装参考引用[3]等。同时,注意用户是在离线环境下,所以所有依赖都需要离线解决,不能使用yum在线安装,但用户可能已经通过其他方式获取了这些rpm包。 最后,生成相关问题,可能涉及不同版本安装的区别、依赖解决方法、常见错误处理等。</think>### CentOS 7 离线安装 MySQL 教程 #### 1. **准备安装包** - 从MySQL官网下载对应版本的RPM安装包(如MySQL 5.7或8.0)[^2]。需包括以下组件: - `mysql-community-server` - `mysql-community-client` - `mysql-community-libs` - `mysql-community-common` - `mysql-community-devel`(可选) - 若系统无法访问官网,需通过其他设备下载后传输至目标服务器。 #### 2. **安装依赖** - **基础依赖**:确保系统已安装`libaio`、`numactl`等库: ```bash rpm -ivh libaio-*.rpm # 手动安装本地rpm包 ``` - **其他依赖**:根据MySQL版本可能需要`openssl`、`perl`等组件,需提前准备离线包[^3]。 #### 3. **安装MySQL组件** - 按顺序执行以下命令安装RPM包(以MySQL 5.7为例)[^4]: ```bash rpm -Uvh mysql-community-common-5.7*.rpm rpm -Uvh mysql-community-libs-5.7*.rpm rpm -Uvh mysql-community-client-5.7*.rpm rpm -Uvh mysql-community-server-5.7*.rpm ``` - 若安装失败,检查依赖是否完整(如`net-tools`)。 #### 4. **初始化配置** - **启动MySQL服务**: ```bash systemctl start mysqld systemctl enable mysqld ``` - **获取临时密码**: ```bash grep 'temporary password' /var/log/mysqld.log ``` - **修改root密码**: ```bash mysql_secure_installation # 按提示操作 ``` #### 5. **配置防火墙(可选)** - 开放MySQL默认端口`3306`: ```bash firewall-cmd --zone=public --add-port=3306/tcp --permanent firewall-cmd --reload ``` 若未启用防火墙可跳过[^1]。 #### 6. **验证安装** - 登录MySQL: ```bash mysql -u root -p ``` - 执行`SHOW DATABASES;`确认服务正常。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值