一键安装MySQL脚本教程
"这是一个用于在Linux系统上自动化安装MySQL的bash脚本。脚本包含了创建MySQL用户和组、准备数据目录、设置环境变量、安装依赖软件、下载MySQL源码、配置编译以及解压相关文件等一系列步骤。" 这个脚本的主要目的是简化MySQL的安装过程,使得在Linux环境下可以快速部署MySQL服务器。以下是脚本涉及的关键知识点: 1. **用户和组管理**:通过`groupadd mysql`和`useradd -r -g mysql mysql`命令创建了一个名为`mysql`的系统用户和组,这是为了确保MySQL服务运行时具有适当的权限。 2. **目录创建**:`mkdir`命令创建了多个必要的目录,如`/usr/local/mysql`(MySQL软件安装位置)、`/home/mysql/data`(MySQL的数据存储目录)、`/home/mysql/logs`(日志文件存放地)等,这些都是MySQL运行所必需的。 3. **环境变量设置**:通过向`/etc/profile`文件追加内容,将MySQL的可执行文件路径添加到系统的PATH变量中,使得在任何目录下都能直接运行MySQL命令。 4. **依赖安装**:`yum -y install`命令安装了一系列编译MySQL所需的依赖软件,如`wget`(下载工具)、`gcc-c++`(C++编译器)、`ncurses-devel`(用于ncurses库开发)、`cmake`(构建系统工具)、`make`(构建工具)、`perl`(编程语言)等。 5. **MySQL源码下载与编译**:使用`wget`从MySQL官方网站下载特定版本的源码,然后使用`tar`解压缩。接着,使用`cmake`进行配置,这里指定了MySQL的安装前缀、套接字位置、默认字符集、启用的存储引擎以及其他选项。配置完成后,通常会用`make`和`make install`来编译和安装MySQL。 6. **源码下载辅助**:脚本中似乎有一个错误,最后一行尝试解压`gmock-1.6.0.zip`,但这在之前的命令中没有下载,这可能是脚本的一个遗漏或者是为了其他目的而准备的,例如测试或编译MySQL的特定部分。 7. **安全启动和配置**:虽然脚本中没有提及,但安装完成后,还需要执行MySQL的安全初始化脚本(如`mysql_secure_installation`),设置root用户的密码,删除匿名用户,禁止root远程登录等,以增强系统安全性。 这个脚本提供了一个基础的MySQL安装流程,但实际部署时可能需要根据具体的系统环境和需求进行调整,比如添加防火墙规则,设置启动脚本,以及配置系统服务以自动启动MySQL等。
groupadd mysql
useradd -r -g mysql mysql
mkdir -p /usr/local/mysql
mkdir -p /home/mysql
mkdir -p /home/mysql/data
mkdir -p /home/mysql/logs
mkdir -p /home/mysql/temp
echo "PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH" >>/etc/profile
echo "export PATH" >>/etc/profile
source /etc/profile
yum -y install wget gcc-c++ ncurses-devel cmake make perl
cd /usr/local/src
wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.12.tar.gz
tar -zxvf mysql-5.6.12.tar.gz
cd mysql-5.6.12
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/home/mysql/data -DMYSQL_USER=mysqlDMYSQL_TCP_PORT=3306 -DENABLE_DOWNLOADS=1 -Wno-dev --no-warn-unused-cli
cd mysql-5.6.11\source_download
cp /opt/gmock-1.6.0.zip .
unzip gmock-1.6.0.zip
cd gmock-1.6.0
./configure
make
cd /usr/local/src/mysql-5.6.12
rm -rf CMakeCache.txt
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/home/mysql/data -DMYSQL_USER=mysqlDMYSQL_TCP_PORT=3306 -DENABLE_DOWNLOADS=1 -Wno-dev --no-warn-unused-cli
make && make install
make clean
chown -Rf mysql:mysql /usr/local/mysql
chown -Rf mysql:mysql /home/mysql
下载后可阅读完整内容,剩余1页未读,立即下载
- 粉丝: 0
- 资源: 3
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 李兴华Java基础教程:从入门到精通
- U盘与硬盘启动安装教程:从菜鸟到专家
- C++面试宝典:动态内存管理与继承解析
- C++ STL源码深度解析:专家级剖析与关键技术
- C/C++调用DOS命令实战指南
- 神经网络补偿的多传感器航迹融合技术
- GIS中的大地坐标系与椭球体解析
- 海思Hi3515 H.264编解码处理器用户手册
- Oracle基础练习题与解答
- 谷歌地球3D建筑筛选新流程详解
- CFO与CIO携手:数据管理与企业增值的战略
- Eclipse IDE基础教程:从入门到精通
- Shell脚本专家宝典:全面学习与资源指南
- Tomcat安装指南:附带JDK配置步骤
- NA3003A电子水准仪数据格式解析与转换研究
- 自动化专业英语词汇精华:必备术语集锦