字体:  

Discuz!/SupeSite/MySQL 三方服务器分离部署

Nanu 发表于: 2006-7-20 22:33 来源: SupeSite/X-Space官方站

本文的部署方法适用于 Windows/Linux

一、环境概述

本文所叙述的安装方法可以使Discuz!、SupeSite、数据库(MySQL) 分别
位于3台服务器中独立运行,而三者又形成一个社区整体,以提高网站社区的
响应速度和运行效率。

如果需要进行三方服务器分离部署,请务必确认三台服务器位于同一网段
或者说三台服务器之间互联的网络条件非常好,建议三台服务器位于同一个
100M/Bps局域网内。


假想环境:

* Discuz! 论坛服务器           222.36.123.1    http://bbs.abc.com
* SupeSite 服务器              222.36.123.2    http://space.abc.com
* MySQL 数据库服务器        222.36.123.3
* 三台机器同处于一个网段内
* MySQL 服务器已经安装完毕
* 2台Web服务器已经安装好IIS/Apache + PHP + Zend Optimizer
* MySQL服务器必须对 222.36.123.1 和 222.36.123.2 开放 3306 端口


二、部署步骤

1. 部署MySQL服务器

对于MySQL服务器,默认情况下是禁止远程计算机进行连接的,所以MySQL服务器的
部署主要是对2台运行 Discuz! 和 SupeSite 的Web服务器进行远程连接授权,按照
以下步骤操作:

(1) 以root身份登录MySQL控制台(Windows 打开CMD,Linux 直接在控制台输入)

CODE:

mysql -u root -p(2) 登陆后,建立一个新数据库(discuz)

CODE:

> create database discuz;(3) 对2台WEB服务器进行远程连接授权

CODE:

> grant all privileges on discuz.* to dzuser@222.36.123.1 identified by "password";上面这行命令为222.36.123.1 (Discuz! 论坛服务器) 进行授权,同时建立一个普通用户。
      其中,discuz为数据库名称,dzuser为用户名,password为密码。

CODE:

> grant all privileges on discuz.* to dzuser@222.36.123.2 identified by "password";为SupeSite服务器进行授权。

CODE:

> FLUSH PRIVILEGES;刷新MySQL授权表。

CODE:

> quit退出MySQL控制台。

2. 部署Discuz!论坛服务器
首先请确认服务器已经部署好 Apache + PHP + Zend Optimizer,之后直接将Discuz!论坛程序上传到
服务器的网站目录中,按照常规方法安装好Discuz!论坛即可。注意:安装论坛过程中的填写数据库信
息部分,要按照上一步建立的MySQL普通用户信息进行填写。

3. 部署SupeSite服务器
首先请确认服务器已经部署好 Apache + PHP + Zend Optimizer,之后直接将SupeSite程序上传到
服务器的网站目录中,并且运行install.php程序开始安装,第一步“参数设置”按照如下填写:

CODE:


论坛数据库服务器:222.36.123.3
论坛数据库用户名:dzuser
论坛数据库密码:password
论坛数据库名:discuz
论坛表名前缀:cdb_
论坛URL地址:http://bbs.abc.com

站点表名前缀:supe_
站点URL访问地址:http://space.abc.com
系统Email:webmaster@abc.com
按照上述进行配置后,后面的步骤按照提示进行安装即可。

全部安装完成后,分别打开http://bbs.abc.com和http://space.abc.com进行测试,如果均正常则说明
分离部署成功。

另外,有关论坛推送功能,只要按照SupeSite中的相关说明操作即可!

总之,处理好 MySQL 服务器的远程连接授权是最重要的!做好连接授权是整个部署的基础。

最新回复

肯得基 at 2006-7-21 00:06:40
不错,收藏了
c++builder at 2006-7-21 07:07:25
恩,支持下
linsie at 2006-7-21 08:46:57
8错 内网可以实现
e_zailai at 2006-10-04 07:12:26
不错,收藏了
oxiaohaio at 2006-11-13 12:16:59
恩,这种方法必须在理想网络环境下才好用。
linkolin at 2006-12-21 16:46:24
如此好贴,收藏。……
kyyyyy at 2006-12-21 21:21:46
收藏~
uoojoo at 2007-1-06 09:41:53
借鉴之用 .........
tosogo at 2007-2-14 10:03:05
老大,你看这种情况能用你的方法解决不?
网站http://www.abc.com有个镜像线路http://cnc.abc.com
能不能只让dz的mysql数据库走http://cnc.abc.com,而让其他比如图片访问走http://www.abc.com
besthome at 2007-3-01 14:29:33
不错,关键是处理好 MySQL 服务器的远程连接授权是最重要的!
我想了解的,也是这!呵,受教了!
冰城宝宝 at 2007-6-05 11:00:18
收藏,太好了,正是我需要的
360度空间 at 2007-6-05 14:33:55
bjchenxu at 2007-6-07 16:47:28
进一步提升性能的两个建议

1 3台机器建议组内网,效率会进一步提高
2 如果是3台机器,建议1台装discuz/supesite,另外两台装mysql,主从式,主的用于写,从的用于读
viao at 2007-7-02 17:38:22
郁闷我  我的不在一个局域段

我国内的服务器是西安的     还有一台是美国的  这个怎么实现数据同步呢    不知楼主有研究没有
WTO邪门 at 2007-7-09 01:09:44
有个问题,三台服务器都是双网卡
为了不影响外网用户的访问,我想实现WEB程序通过内网访问数据库,用户通过外网访问WEB程序
实现起来就出了这样的问题:用telnet可以看到数据库打开了3306端口(默认端口),用MYSQL第三方工具可以通过内网访问数据库(SQL设置对任意IP开放),但是设置config的时候用内网IP做数据库路径总不能访问到数据库,用外网IP就可以,不知原因何在

PS:WEB服务器网卡也做了路由设置,访问内网走一块网卡
WTO邪门 at 2007-7-09 01:30:38
晕,可以了 必须要楼主的这条命令创建帐户才可以,奇怪
tietai at 2007-9-01 22:31:38
good good study dayday up
ship9i at 2007-9-04 03:29:13
只有內網可以喔~ 不同斷的真的不行嗎?
zengtao01 at 2007-9-05 09:52:42
如果需要进行三方服务器分离部署,请务必确认三台服务器位于同一网段
或者说三台服务器之间互联的网络条件非常好,建议三台服务器位于同一个
100M/Bps局域网内。

这个麻烦了
A-- at 2007-9-05 18:58:57
非常感谢
留个脚印
先行收藏
日后再来