一台WEB服务器一台mysql服务器

回复 收藏
本帖最后由 liang 于 2016-4-26 21:56 编辑

网站业务架构演变过程
http://www.apelearn.com/bbs/foru ... d=8644&fromuid=6493
(出处: 【阿铭Linux】)

阅读上面的文章后做的实验
实验(一)
01.jpg

一台WEB服务器,一台mysql服务器,实现mysql从web服务器中分离

web   eth0:192.168.2.128    eth1: 192.168.5.104   centos6.7_64    LNMP

mysql  eth0: 192.168.2.5     eth1: 192.168.5.101   centos6.7_64    Mysql

web服务器之前运行的是discuz为例

1.Mysql服务器中
  1. yum -y install mysql          ##安装mysql(编译或免编译安装
  1. service mysqld start             ##开启mysql
进入mysql,建立数据库,用户和密码,必须与web服务器中discuz备份数据中的数据库名,用户名和密码相同
  1. mysql -uroot -ppasswd                        ##登录mysql
  1. create database discuz;                 ##创建数据库
  1. grant all on discuz.*  to 'user'@'192.168.5.104' identified by 'password';   ##建立用户和密码,ip为web服务器ip
  1. mysql>flush privileges;     修改后刷新
恢复备份数据到mysql服务器
  1. mysql  -uroot -ppasswd -A < mysql_backup.sql
2.web服务器中
  1. service mysqld stop    ##停止mysql服务
  1. chkconfig mysqld off    ##关闭mysql开机启动
修改以前安装的discuz连接数据库的IP地址

进入网站根目录修改config目录下三个文件
  1. cd /data/www
  1. vim config/config_global.php
  1. vim config/config_ucenter.php
  1. vim uc_server/data/config.inc.php
分别修改dbhost的地址IP,主要是是将原来的 "localhost" 改成现在的mysql服务器IP
  1. $_config['db']['1']['dbhost'] = '192.168.5.101';        数据库IP地址
  2. $_config['db']['1']['dbuser'] = 'user';                         数据用户名
  3. $_config['db']['1']['dbpw'] = 'password';                 数库密码
  4. $_config['db']['1']['dbname'] = 'discuz';                 数据库名
如果在web服务器中重新安装discuz或者博客或其他服务,只需在浏览器安装界面填写数据库服务器时,

将 "localhost" 改成mysql服务器IP,若mysql监听端口非默认3306,就需要指定监听的端口


浏览器访问web服务器,查看数据库连接是否正常



2016-04-02 23:52 举报
已邀请:
0

ilinux

赞同来自:

学习一下,为什么一台机器要有两个ip呢
0

maria

赞同来自:

ilinux 发表于 2016-4-3 11:15
学习一下,为什么一台机器要有两个ip呢

{:6_137:}生产环境的服务器一般都是两个网卡两个ip,一个连外网一个连内网,也有多个ip的!
0

liang

赞同来自:

maria 发表于 2016-4-3 12:03
生产环境的服务器一般都是两个网卡两个ip,一个连外网一个连内网,也有多个ip的!

请教下,两台都重新启动后访问网页会很慢,之后在web服务器添加memcached 访问或刷新有时会出现502,什么回事?
0

maria

赞同来自:

liang 发表于 2016-4-3 14:53
请教下,两台都重新启动后访问网页会很慢,之后在web服务器添加memcached 访问或刷新有时会出现502,什么 ...

502是网关错误,所以应该是网络连接的问题,把防火墙清空一下试试
0

has

赞同来自:

学习一下
0

kevin_tao

赞同来自:

如果数据库分离了,原来做的一主多从就会失效吧
0

kevin_tao

赞同来自:

这里说数据库的名字和密码要一致,这个不一定需要吧,因为只要修改对,不一致也能成功吧
0

liang

赞同来自:

kevin_tao 发表于 2016-4-22 18:21
如果数据库分离了,原来做的一主多从就会失效吧

你把它分离了,相关的配置肯定要改呀
0

liang

赞同来自:

kevin_tao 发表于 2016-4-22 18:26
这里说数据库的名字和密码要一致,这个不一定需要吧,因为只要修改对,不一致也能成功吧

这里是为了不出错,为了还是用原来的用户连接mysql,才这样写到,要设置成其他也可以,只是要修改相关配置而已
0

kevin_tao

赞同来自:

请问一下,我做的时候,按照步骤来弄,发现出现
Discuz! Database Error
(1130) notconnect
PHP Debug
No.        File        Line        Code
1        forum.php        56        discuz_application->init()
2        source/class/discuz/discuz_application.php        65        discuz_application->_init_db()
3        source/class/discuz/discuz_application.php        385        discuz_database::init(%s, Array)
4        source/class/discuz/discuz_database.php        23        db_driver_mysql->connect()
5        source/class/db/db_driver_mysql.php        75        db_driver_mysql->_dbconnect(%s, %s, %s, %s, %s, %s)
6        source/class/db/db_driver_mysql.php        88        db_driver_mysql->halt(%s, %d)
7        source/class/db/db_driver_mysql.php        224        break()
请问这是怎么回事?感觉像是web无法连接到MySQL,但我查看授权貌似没错,然后那三个文件好像也没填错
0

liang

赞同来自:

kevin_tao 发表于 2016-6-18 22:34
请问一下,我做的时候,按照步骤来弄,发现出现
Discuz! Database Error
(1130) notconnect

看下与mysql网络连接是否有问题,网络没问题就还是配置文件的问题
0

kevin_tao

赞同来自:

liang 发表于 2016-6-19 00:11
看下与mysql网络连接是否有问题,网络没问题就还是配置文件的问题

网络是没问题的,我感觉也是配置,但我实在不懂,因为之前我是按照文档弄的没错,这次就错了,用户名和密码还是那个grant命令的。。。然而改了几次还是那样
0

kevin_tao

赞同来自:

kevin_tao 发表于 2016-6-20 11:49
网络是没问题的,我感觉也是配置,但我实在不懂,因为之前我是按照文档弄的没错,这次就错了,用户名和密 ...

我终于知道原因了,特么我授权搞反了!!!差点想砸电脑

回复帖子,请先登录注册

退出全屏模式 全屏模式 回复
评分
可选评分理由: