返回博客
服务器
2018年11月1日
12分钟
3.5K 次浏览

Nginx搭建及CentOS 7下MySQL安装

介绍如何从源码编译安装Nginx服务器,以及在CentOS 7上安装配置MySQL 5.6数据库的详细步骤。

Nginx搭建及CentOS 7下MySQL安装

概览

介绍如何从源码编译安装Nginx服务器,以及在CentOS 7上安装配置MySQL 5.6数据库的详细步骤。

正文

Nginx 的源码编译安装

Nginx 官网下载地址:http://nginx.org/en/download.html

安装依赖库:

yum install gcc-c++
yum install pcre pcre-devel
yum install zlib zlib-devel
yum install openssl openssl-devel

下载、解压并进入源码目录:

wget http://nginx.org/download/nginx-1.12.2.tar.gz
tar -zxvf nginx-1.12.2.tar.gz
cd nginx-1.12.2

编译安装,以下配置任选其一:

./configure
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
make
make install

--prefix 指定安装目录,--with 用于添加模块。若出现 C compiler、PCRE 或 zlib 缺失错误,分别安装 gcc-c++、pcre-devel、zlib-devel 后重新执行 make。

CentOS 7 安装 MySQL

CentOS 7 通常默认安装 MariaDB,先检查并卸载:

rpm -qa | grep mariadb
rpm -e --nodeps 文件名

下载 MySQL 5.6 并安装到 /usr/local/mysql

cd /usr/local
wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.37-linux-glibc2.12-x86_64.tar.gz
tar -zxvf mysql-5.6.37-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.6.37-linux-glibc2.12-x86_64 mysql
cd mysql
groupadd mysql
useradd -g mysql mysql

复制并编辑配置文件:

cp support-files/my-default.cnf /etc/my.cnf
vim /etc/my.cnf
[mysql]
default-character-set=utf8

[mysqld]
user = mysql
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
lower_case_table_names=1
character-set-server=utf8
default-storage-engine = INNODB
log-error = /usr/local/mysql/data/error.log
pid-file = /usr/local/mysql/data/mysql.pid

初始化数据库并配置权限:

cd /usr/local/mysql
chown -R mysql:mysql ./
yum -y install autoconf
./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --pid-file=/usr/local/mysql/data/mysql.pid
chown -R mysql:mysql data

如果出现 libnuma.so.1 缺失,执行 yum install libaio* -y 后重新初始化。

添加服务并启动:

cp support-files/mysql.server /etc/rc.d/init.d/mysqld
chmod +x /etc/rc.d/init.d/mysqld
chkconfig --add mysqld
chkconfig --list mysqld
systemctl start mysqld

把 MySQL 加入环境变量:

vim /etc/profile
export PATH=$PATH:/usr/local/mysql/bin

登录并设置 root 密码:

mysql -u root -p

第一次出现 Enter password: 时直接回车,然后执行:

set password = password('你的密码');

常见问题与用户授权

如果出现 mysql: command not found,可以创建命令链接:

ln -s /usr/local/mysql/bin/mysql /usr/bin

创建用户、授权并刷新权限:

grant all privileges on testDB.* to test@localhost identified by '1234';
grant all privileges on testDB.* to test@'%' identified by '密码';
flush privileges;

使用 binlog 反编译日志

whereis mysqlbinlog
./mysqlbinlog --no-defaults --base64-output=decode-rows -v --start-datetime='2018-10-29 14:07:00' --stop-datetime='2018-10-29 14:09:00' --database=test mysql-bin.000303 > log.log

其中 start-datetime 和 stop-datetime 指定时间范围,database 指定数据库,最后的 log.log 是输出文件。

要点

01

完整介绍从准备到完成的配置过程 (服务器)

02

将操作拆分为适合在真实服务器上执行的小步骤

03

包含验证方法和需要注意的常见问题

说明

本文保持简洁,加载速度快,方便在桌面端和移动端浏览。

博客列表中的原始链接现在可以正常打开,不会再跳转到 404 页面。

最近文章