安装mysql

1:首先检查 MySQL 是否已安装

yum list installed | grep mysql

如果有的话 就全部卸载

yum -y remove +数据库名称

2:MySQL 依赖 libaio,所以先要安装 libaio

yum search libaio # 查看相关信息

yum install libaio # 安装依赖包


3:下载 MySQL Yum Repository

执行:wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm

如果提示-bash: wget: 未找到命令,请先执行 yum install wget 安装 wget.之后再执行下载

4:添加 MySQL Yum Repository 到你的系统 repository 列表中,执行

yum localinstall mysql-community-release-el7-5.noarch.rpm

出现Is this ok [y/d/N]: 输入y即可



5:验证下是否添加成功

yum repolist enabled | grep "mysql.*-community.*"



6:查看 MySQL 版本,执行

yum repolist all | grep mysql

可以看到 5.55.7 版本是默认禁用的,因为现在最新的稳定版是 5.6

7:通过 Yum 来安装 MySQL

执行:yum install mysql-community-server 出现Is this ok [y/d/N]: 输入y即可



8:执行查看安装信息

rpm -qi mysql-community-server.x86_64 0:5.6.24-3.el7



9:查看安装目录whereis mysql

可以看到 MySQL 的安装目录是 /usr/bin/

10:启动和关闭 MySQL Server

启动 MySQL Server

systemctl start  mysqld

查看 MySQL Server 状态

systemctl status  mysqld

关闭 MySQL Server

systemctl stop mysqld

测试是否安装成功

mysql

可以进入 mysql 命令行界面



11:防火墙设置

远程访问 MySQL, 需开放默认端口号 3306.

systemctl start firewalld.service 开启防火墙

执行

firewall-cmd --permanent --zone=public --add-port=3306/tcp

firewall-cmd --permanent --zone=public --add-port=3306/udp

这样就开放了相应的端口。

systemctl stop firewalld.service 关闭防火墙

执行

firewall-cmd --reload

出现:FirewallD is not running 说明防火墙关闭状态就不用管了

12:MySQL 安全设置

mysql启动后,可以执行

mysql_secure_installation;

注意看红色箭头,下面的

New password: 设置数据库密码

Re-enter new password: 再次填写设置数据库密码



13:让外部也可以连接数据库

下面可以看到都只能本机访问mysql,如果要外部可以访问mysql,那么host这里应该是显示%,所以这里我们可以选择重新创建一个用户并授予最高的权限,语句如下:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'sandao' WITH GRANT OPTION;

//这句话就是给root账户设置密码为sandaohost%,即外部任何主机均可访问。*.*这个本意是数据库名.表名,我们这里没有写任何表名也没有写数据库名,就是意思所有的数据库都可以用这个root账户访问

flush privileges;//让刚刚修改的权限生效

然后接下来就是退出mysql

命令: exit

重启mysql服务

命令:systemctl restart mysqld



14:测试连接



源码编译安装php5.6

1:wget http://cn2.php.net/distributions/php-5.6.5.tar.gz

2:解压 tar -xvzf php-5.6.5.tar.gz

3:进入php-5.6.5

3.1安装./configure --prefix=/usr/local/php --enable-fpm --enable-mbstring --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd

4:编译 make install

4.2:如果:libxml2 installation 错误

4.3:检查是否安装了libxm包

4.4: 检查是否有安装包 : rpm -qa |grep  libxml2
会显示:

libxml2-2.6.26-2.1.12
libxml2-python-2.6.26-2.1.12

重新安装libxml2和libxml2-devel包, yum安装的时候发现新版本会提示更新,需要更新的可以更新,不要跳过就行了。(y)

运行: yum install libxml2

运行: yum install libxml2-devel -y

安装完之后查找xml2-config文件是否存在

运行: find / -name "xml2-config"

会显示:/usr/bin/xml2-config


5:继续编译运行

./configure --enable-fpm --enable-mbstring --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd

顺便编译fpm指定mysql的头文件



6:实行命令安装: make install (编译需要一段时间.耐心等待)



7 查看: php -v



8 启动:php-fpm



9 Php-fpm启动不了;

进入: cd /usr/local/php/etc

复制:cp /usr/local/php/etc/php-fpm.conf.default /usr/local/etc/php-fpm.conf(命名为php-fpm.conf)

修改:vi php-fpm.conf pid = run/php-fpm.pid #取消前面的警号 大约25

然后保存

启动:/usr/local/php/sbin/php-fpm

查看是否启动: ps -ef | grep php-fpm



10 安装成功

源码编译安装nginx1.7.9

1.下载nginx版本 wget http://nginx.org/download/nginx-1.7.9.tar.gz

2.解压 tar -xvzf nginx-1.7.9.tar.gz

3 进入 cd nginx-1.7.9

4 先安装依赖包:

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

5 安装:

./configure --prefix=/usr/local/nginx --sbin-path=/usr/local/nginx/sbin/nginx --conf-path=/usr/local/nginx/nginx.conf --pid-path=/usr/local/nginx/nginx.pid

--sbin-path指定启动目录

--prefix 指定安装目录

6 编译: make && make install

7 启动: /usr/local/nginx/sbin/nginx (我的是安装在这个目录,找到nginx启动项 运行)



8 运行服务器地址:出现下面的就说明成功了



测试执行php


1:修改配置:vim /usr/local/nginx/nginx.conf

2:在大约45行 加上 index.php

location / {

root   html;

index  index.html index.htm index.php;

}

3: 打开注释,大约在65 - 72行

location ~ \.php$ {

root           html;

fastcgi_pass   127.0.0.1:9000;

fastcgi_index  index.php;

fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;

include        fastcgi_params;

}

之后重启nginx.重启命令:先结束进程:kill nginx 在启动: /usr/local/nginx/sbin/nginx

如果启动报错

把/usr/local/nginx/nginx.conf 里面的

fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;

注释掉换成

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

大约在65 - 72

location ~ \.php$ {

root           html;

fastcgi_pass   127.0.0.1:9000;

fastcgi_index  index.php;

#fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

include        fastcgi_params;

}

之后重启nginx.重启命令:先结束进程:kill nginx 在启动: /usr/local/nginx/sbin/nginx

4:在/usr/local/nginx/html目录写一个php文件,里面写phpinfo();之后运行这个文件.

出现下面这个页面则代表成功.

往下翻,看到php还有很多常用的扩展都没有装上的呢,比如curl intl openssl等等其他扩展。这是因为在php ./configure的时候,没有enable的原因。这些库有需要的时候,可以再去源码目录的extentison中编译安装,动态添加进去。


全部安装成功.尽情发挥吧!