Linux 编译安装 MySQL

编译MySQL

前置条件

  1. 提前安装 wget, cmake, make, openssl-devel, openssl, gcc-c++, libtirpc
    yum -y install gcc* gcc-c++ ncurses* ncurses-devel* cmake* bison* libgcrypt* perl* make*

步骤

// 下载源码解压缩,由于下载的版本带有 boost,所以不需要另外再下载
// 解压 tar.gz 压缩包,并进入解压后的目录
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-boost-5.7.28.tar.gz

// 检查编译依赖
cmake –graphviz . -DWITH_BOOST=./boost/boost_1_59_0 -DCURSES_LIBRARY=/usr/lib64/libncurses.s -DCURSES_INCLUDE_PATH=/usr/include

// make 编译并安装,耗时较长
make
make install
// 最后显示 -- Installing: /usr/local/mysql/support-files/mysql.server 表明已经安装进 /usr/local/mysql/ 目录下

安装 Mysql

系统环境

CentOS 7

前置条件

  1. Mysql 通用发行版文件格式一般为:mysql-VERSION-OS.tar.gz,VERSION 是类似 5.7.31 这样的版本号,OS 是类似 pc-linux-i687 这样的系统编号。
  2. 如果之前安装过 MySQL ,类似使用 yum install mysql方式安装的,必须先进行删除。
  3. 系统提前装好 MySQL 的依赖:yum install libaio
  4. 提前安装 wget 等工具

安装步骤(根据官方指引)

$ wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz   // 下载 5.7 系列最新版
$ groupadd mysql                                                                                       // 添加一个用户组
$ useradd -r -g mysql -s /bin/false mysql                                                              // 添加 mysql 进 mysql 用户组
$ tar zxvf ./mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz                                                // 解压 tar.gz 文件
$ ln -s /root/download/mysql-5.7.28-linux-glibc2.12-x86_64 mysql                                       // 设置软链
$ cd mysql
$ // mkdir mysql-files
$ // chown mysql:mysql mysql-files                                                                     // 修改用户、用户组
$ // chmod 750 mysql-files
$ bin/mysqld --initialize --user=mysql                                                                 // 初始化,如果已经初始化过,就会报错
$ bin/mysql_ssl_rsa_setup                                                                              // ssl 相关
$ bin/mysqld_safe --user=mysql &
$ cp support-files/mysql.server /etc/init.d/mysql.server                                               // 启动项

// 使用mysqld_safe 命令启动
// 1. 检查系统和选项。
// 2. 检查MyISAM表。
// 3. 保持MySQL服务器窗口。
// 4. 启动并监视mysqld,如果因错误终止则重启。
// 5. 将mysqld的错误消息发送到数据目录中的host_name.err 文件。
// 6. 将mysqld_safe的屏幕输出发送到数据目录中的host_name.safe文件。

// A temporary password is generated for root@localhost: Fb>kO,kjq1hF
// 控制台返回日志给给出用户名密码

你可能感兴趣的:(Linux 编译安装 MySQL)