首页 > 代码库 > lanmp之二 (奇葩问题)

lanmp之二 (奇葩问题)

ps:该篇是接 lanmp —— 动静分离

lanmp —— 奇葩问题

话说,在 搭建 bbs.abc.com (discuz论坛)的 时候。。。。

1、说明:web机器上以前已经有一个 discuz 旧论坛

要做数据迁移(改域名/拷贝数据/迁移网站),这里采取的方法是改配置文件(也可以重装discuz)

 

2、具体操作

(1)cd /data/bbs/config   ——》 /data/bbs是从以前的discuz根目录拷贝过来的

(2)修改两个文件 

      config_ucenter.php ——》 用户中心相关

修改内容:  

DBHOST,  DBUSER, DBPW,  DBNAME,UC_DBTABLEPRE,UC_API

      config_global.php   ——》 全局配置文件

修改内容:

dbhost,dbuser,dbpw,dbname

 

3、问题

(1)描述:

DBNAME是在web机器上的数据库,在db机器上是没有的

需要用rsync拷贝到远程db机器上

而我的DBNAME是从web机器上旧的discuz库拷贝过来的

 

(2)现象

(a)现象1:浏览器访问bbs.abc.com出错

 

技术分享

 

这个ljy其实就是下图的 luo(本人亲测 - -)

(b)现象2:web机器上的mysql报错

技术分享

 

 

 (3)原因

(a)分析

因为luo的表权限有问题!!!!
我之前是直接把discuz目录的所有东西复制到/data/mysql/ljy目录下的 
进行的操作如下:
cp -r ljy ljy.bak
mv ljy.bak luo    

 

(b)注意:

以上操作的话,luo的属主属组并不是 mysql ,而是 root

技术分享

 

(c)原因:mv 命令能保留文件所有属性和权限,尤其是selinux属性,cp则不能

 
(4)解决方法
(a)重新导入discuz.sql ——》 不用担心mysql用户权限问题
mysql  -uroot luo < /data/discuz.sql   
discuz.sql 是以前备份的discuz库
 
(b)cp后修改权限:chown -R mysql:mysql luo/
 
 
另外
还有一个小问题 ——》 上面那个问题查了我很久 = =
诸如
1、目录未找到或者无法访问: ./data/template
 
技术分享
 
2、Can not write to cache files, please check directory ./data/ and ./
 
解决方法(上面的1,2现象都通用)
chown -R daemon /data/bbs/data/
chown -R daemon /data/bbs/uc_server/data
chown -R daemon /data/bbs/uc_client/data

 

原因:bbs中的个别目录需要apache的用户去写,apache是以daemon用户来运行的!

 

lanmp之二 (奇葩问题)