您的位置:首页 > 数据库 > MariaDB

双apache + nfs + mariadb 实现安装discuz论坛程序

2014-08-17 15:10 691 查看
实验环境:Vmware虚拟机,各主机的作用和IP地址为:
DNS:192.168.1.138
HTTPD1:192.168.1.132
HTTPD2:192.168.1.134
DATABASE:192.168.1.137
NFS:192.168.1.129
实验步骤:
一、准备DNS服务器(192.168.1.138):
# yum -y install bind
# vim /etc/named.conf



# named-checkconf;修改主配置后,检查配置文件语法错误
添加正向反向解析区域,添加内容如下:

# vim /etc/named.rfc1912.zones





# named-checkconf;检查配置文件语法错误
# cd /var/named
添加正向区域解析文件,内容如下:

# vim sueking.com.zone



# chmod 640 sueking.com.zone;修改区域文件属性
# chgrp named sueking.com.zone;修改区域文件属组
# named-checkzone "sueking.com" /var/named/sueking.com.zone;检查正向区域文件的语法错误
添加反向区域解析文件,内容如下:

# vim 192.168.1.zone



# chmod 640 192.168.1.zone
# chgrp named 192.168.1.zone
# named-checkzone "1.168.192.in-addr.arpa" /var/named/192.168.1.zone
# service named start;启动named服务
查看服务启动结果,其中udp,tcp协议的53号端口都处于监听状态。如下图:

# ss -tunl



使用host工具测试DNS服务器解析bbs.sueking.com的结果,如下图:

# host -t A bbs.sueking.com 192.168.1.138



另外我们可以使用dig命令测试一下轮询的效果,使用这条命令重复几次,可以看到dns服务器解析的效果中两个主机的IP地址上下位置在发生变化,即dns解析时会将不同的解析发送到不同的主机上。
# dig -t A bbs.sueking.com @192.168.1.138





二、准备一台nfs服务器(192.168.1.129)
# mkdir /shared/nfs;准备共享给两台apache服务器的共享文件目录
# setfacl -m u:apache:rwx /shared/nfs
# unzip Discuz_X2.5_SC_GBK.zip;解压discuz软件的安装文件,解压出来会生成upload,utility和readme三个目录,其中upload用于论坛的安装。
# cp upload /shared/nfs
# cd /shared/nfs
# mv upload bbs
# cd bbs
# chmod -R 777 config data uc_client uc_server;将这四个目录的属性调整为777,以便安装discuz时检查条件可以通过。
添加要导出的共享目录给两台apache服务器,内容如下:

# vim /etc/exports




# service nfs start;启动nfs服务。
三、准备两台apache服务器,使用CentOS 6.5系统上默认安装的httpd-2.2的版本,同时安装上php。

# yum install php
# yum install php-mysql
将nfs服务器共享的nfs分区挂载至本地文件系统,挂载选项要加上_netdev,避免nfs未启动的情况下,apache服务器不能正常启动。

# showmount -e 192.168.1.129



# vim /etc/fstab



修改httpd配置文件/etc/httpd/conf/httpd.conf,注释掉中心主机,添加php页面文件的支持






添加虚拟主机的定义,内容如下:



注意:将默认的字符集由UTF-8调整为SC_GBK,这样在安装discuz过程中不会有乱码。



# service httpd restart
四、准备一台数据库服务器
1、创建一个逻辑卷,将该逻辑卷挂载至/mydata目录,同时创建/mydata/data目录用于存放数据库数据。
2、新建用于运行mysql数据库的用户和组

# groupadd -r mysql
# useradd -g mysql -r -s /sbin/nologin mysql
# chown -R mysql:mysql /mydata/data
3、安装并初始化mariadb-5.5.39

# tar xf  mariadb-5.5.39-linux-x86_64.tar.gz -C /usr/local
# cd /usr/local
# ln -sv mariadb-5.5.39-linux-x86_64 mysql
# cd mysql
# chown -R mysql:mysql ./
# scripts/mysql_install_db --user=mysql --datadir=/mydata/data
# chown -R root ./
4、为mariadb提供主配置文件:

# cd /usr/local/mysql
# cp support-files/my-large.cnf /etc/my.cnf
编辑主配置文件,添加数据库数据存放目录路径,如下图:

# vim /etc/my.cnf



5、为mariadb提供服务脚本:
# cd /usr/local/mysql
# cp support-files/mysql.server /etc/rc.d/init.d/mysqld
# chmod +x /etc/rc.d/init.d/mysqld
# chkconfig --add mysqld
# chkconfig mysqld on
6、导出mariadb的man手册:

# vim /etc/man.config



7、输出库文件给系统库:
# echo '/usr/local/mysql/lib' > /etc/ld.so.conf.d/mysql.conf
# ldconfig


8、导出头文件:
# ln -sv /usr/local/mysql/include /usr/include/mysql
9、修改PATH环境变量:

# vim /etc/profile.d/mysql.sh



10、连接数据库,为将要安装的discuz软件创建连接数据库的用户,并创建数据库,将新创建的数据库授权给该用户。
> CREATE DATABASE bbs;
> CREATE USER tuser@'192.168.1.%' IDENTIFIED BY 'tpass';
> GRANT ALL PRIVILEGES ON bbs.* TO tuser@'%';允许tuser用户在任何主机上登录,可以做进一步限定。
> FLUSH PRIVILEGES;使授权生效。
注:有很多时候,使用远程的方式连接数据库会非常缓慢,这也是由于解析主机名造成的,编辑数据库的配置文件/etc/my.cnf添加skip-name-resolve,可以解决这个问题。




五、安装discuz
在浏览器内输入:192.168.1.132/bbs








注意安装文件的目录下有四个文件夹的属性需要调整为777才能安装,分别是config,data,uc_client,uc_servre,有时候还会遇到mysql_connect()函数检查不通过的情况,一般是没有安装php-mysql包造成的。



填写远程数据库的IP地址及相关数据库信息,点击下一步开始安装:



discuz论坛程序安装完成。输入管理员账号密码可以登录管理中心:



登录管理中心的时候会提示删除安装目录下的index.php文件,按照提示删除该文件:



使用IP地址登录2台apache服务器,测试发帖,及上传附件,先登录到192.168.1.132:



再登录192.168.1.134测试:



都可以看到相同的附件内容,然后将两个apache服务器中对于的虚拟主机的DocumentRoot都改变为/var/www/html/bbs,并重启服务,这样修改是为了可以在浏览器内直接输入FQDN名称来访问。



然后使用装有虚拟主机的XP系统测试,XP系统的DNS服务器指向192.168.1.138,如图:



在cmd命令提示符下测试域名解析的结果:



在浏览器内访问bbs.sueking.com:



可以看到之前发过的贴子及附件内容,discuz论坛程序安装测试完毕。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mariadb 双apache
相关文章推荐