nginx 的源码编译安装
nginx 官网下载地址: http://nginx.org/en/download.html
安装nginx 依赖库
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
##使用默认配置,默认安装在/usr/local/nginx,下面那句是自己添加了指定的模块
如无特殊需求任意执行一句都可以
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
--prefix 参数指定nginx安装的目录 --with 安装需要的模块 按个人需要添加模块
make
make install
##编译源码并安装
-------------------------------------安装nginx中的一些问题--------------------------------
当执行到./configure。。。出现异常时,查看异常日志
checking for OS
+ Linux 2.6.32-042stab130.1 x86_64
checking for C compiler ... not found
./configure: error: C compiler cc is not found
yum install gcc-c++
缺少gcc包,安装gcc即可
./configure: error: the HTTP rewrite module requires the PCRE library. 缺少pcre包
yum -y install pcre-devel
安装即可
./configure: error: the HTTP gzip module requires the zlib library. 缺少zlib包
yum install zlib zlib-devel
安装即可
然后继续执行
make
make install
就可以了
centos 7 安装mysql
由于centos7一般默认安装有mariadb
查看本机是否安装了mariadb数据库
rpm -qa|grep mariadb
卸载上一步查出来的所有文件
rpm -e --nodeps 文件名
如果上一步没有查出东西,这一步可跳过
一般mysql安装在/usr/local
切换路径
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
(对应下载下来的压缩包名)
将解压后的文件夹改名为mysql
mv mysql-5.6.37-linux-glibc2.12-x86_64 mysql
进入文件夹目录
cd mysql
添加用户组mysql
groupadd mysql
添加用户mysql ,为mysql用户
useradd -g mysql mysql
复制mysql默认配置文件到系统环境配置目录下,复制前,检查/etc/下是否有my.cnf,如果有就删除(rm -rf /etc/my.cnf
)
cp support-files/my-default.cnf /etc/my.cnf
修改mysql配置文件
vim /etc/my.cnf
(按i进入编辑模式,编辑完成后按Esc 退出编辑模式,然后 :wq
保存并退出。如果编辑过程中出错。可以不保存强制退出.首先按Esc退出编辑模式,然后:q!
即可强制退出 )
[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
重新进入mysql目录
cd /usr/local/mysql/
修改当前目录用户为mysql
chown -R mysql: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
如果出现:Installing MySQL system tables.../usr/local/mysql//bin/mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory
yum install libaio* -y
即可
如果不报错机成功了
修改data目录的拥有着为mysql,是用户有这个文件的读写权利
chown -R mysql:mysql data
赋予配置文件最大权限
chown -R 777 /etc/my.cnf
复制服务脚本,进系统环境
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
----------------------------------------------------------分割线------------------------------------------------------------------------------
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off (出现这个证明正常生效,开机启动)
开启服务
systemctl start mysqld
打开环境变量配置文件
vim /etc/profile
<大写的G, 即 Shift + g> 到文末,按i进入编辑模式,编辑完成后按 ESC 退出编辑模式,然后 :wq
保存并退出。如果编辑过程中出错。可以不保存强制退出:首先按 Esc 退出编辑模式,然后 :q!
即可强制退出
export PATH=$PATH:/usr/local/mysql/bin
(在文件最后面添加路径,加入环境变量。)
数据库安装成功 ,然后登录数据库
mysql -u root -p
然后会出现如下内容
---------------------------------分割线---------------------------------------
[mysql@server mysql]$ mysql -u root -p Enter password:
---------------------------------分割线-------------------------------------------
第一次登陆 当出现 Enter password:时, 不用密码,直接回车
设置你自己的root密码,自己随意自定义(很重要,不要忘了密码)
set password = password('你的密码');
不要忘了最后的 分号";" 和 passwoed('') 中的单引号。
所有符号必须时英文输入模式下的标点符号
到此就大功告成了,整个数据库安装完成
常见问题:
mysql -u root -p 时出现:
-bash: mysql: command not found
原因:这是由于系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下,当然会找不到命令,我们需要做的就是映射一个链接到/usr/bin目录下,相当于建立一个链接文件。
首先得知道mysql命令或mysqladmin命令的完整路径,比如mysql的路径是:/usr/local/mysql/bin/mysql,我们则可以这样执行命令:
ln -s /usr/local/mysql/bin/mysql /usr/bin
mysql创建用户,并为用户授权
grant all privileges on testDB.* to test@localhost identified by '1234';
创建test用户,密码为1234,并为他授权 testDB库中的所有表权限,仅localhost 即 本地登录
grant all privileges on testDB.* to test@'%' identified by '密码';
%表示任意地址ip都可登录
//刷新系统权限表
flush privileges;
mysql使用 binlog反编译日志文件。
如何查找mysqlbinlog 可执行文件所在目录:
whereis mysqlbinlog
查找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=test 选择指定的数据库名
mysql-bin.000303 binlog文件名
log.log 反编译后的日志输出到指定文件