Chinaunix首页 | 论坛 | 博客
  • 博客访问: 32788
  • 博文数量: 14
  • 博客积分: 260
  • 博客等级: 二等列兵
  • 技术积分: 150
  • 用 户 组: 普通用户
  • 注册时间: 2011-09-02 13:31
个人简介

nothingnothingnothingnothingnothingnothingnothingnothingnothingnothingnothingnothingnothingnothingnothingnothingnothingnothingnothingnothing

文章分类

全部博文(14)

文章存档

2011年(14)

分类: 系统运维

2011-11-08 09:55:14

约定:

操作系统:

MySQL主服务器使用CentOS 5.4系统;从服务器使用Windows server 2003系统,

IP

主服务器IP192.168.0.3

从服务器IP192.168.0.4

软件版本:

php         php-5.1.6-23.2.el5_3

MySQL   mysql-server-5.0.77-3.el5

Apache    httpd-2.2.3-31.el5.centos

APMServ  APMServ 5.2.6

phpMyAdmin phpMyAdmin-2.11.11.2-all-languages

软件安装方式:

YUM方式安装MySQL

安装思路:

1、在主服务器上建Mysql用户,使其能远程登陆

2、编辑主服务器的配置文件

#vi /etc/my.cnf

server-id=1

log-bin

binglog-do-db=备份库名

binglog-ignore-db=不备份库名

 

3、配置从服务器

vi /etc/my.cnf

server-id=2

master-host=192.168.1.9(IP)

master-user=admin帐号

master-password=7758521密码

master-port=3306端口

replicate-do-db=booboo库名

 

一、主服务器配置

安装MySQL

#yum install –y mysql mysql-server

安装Apachephp

#yum install –y httpd php php-mysql

启动服务

# service httpd start

# service mysqld start

#chkconfig httpd on

#chkconfig mysqld on

 

二、创建主服务器MySQL的远程用户

1、安装web界面管理MySQL的软件phpMyAdmin

phpMyAdmin从官网并安装我们这里下载到了phpMyAdmin-3.4.7-all-languages.zip

注意phpMyAdmin-3.x以上的版本要求PHP的版本在5.2x以上,我们可以先卸载开始安装的php,从php官网上 下载源码包进行编译安装

 

如果希望使用rpm包安装的低版本php 5.1x,则需要安装低版本的phpMyAdmin-2.x,我们这里用了phpMyAdmin-2.11.11.2

#unzip phpMyAdmin.zip

#mv phpMyAdmin /var/www/html/php

修改phpmyadmin的配置文件

#vi /var/www/html/php/libraries/config.default.php

$cfg['Servers'][$i]['host'] = 'localhost';

$cfg['Servers'][$i]['port'] = '';

$cfg['Servers'][$i]['user'] = 'root';

$cfg['Servers'][$i]['password'] = 'he’;           #此处是root用户的密码,如果root用户的密码为#空,这里也为空

$cfg['Servers'][$i]['only_db'] = '';

 

2、创建MySQL的远程用户admin

在浏览器中输入:

使用phpMyAdmin登录到MySQL,然后创建远程用户admin

权限à添加新用户:输入用户名和密码,赋予全部的权限,点击[执行]

 

三、从服务器配置

在远程客户端Windows上安装APMServ,从这里下载,APMServ是集成了LAMP的,这里使用了APMServ5.2.6,安装这款软件时,安装路径不能有空格或汉字,否则服务不能成功启动。

然后在 “我的电脑“à属性à高级à新建一个环境变量值为APMServ中的MySQL可执行目录解压的路径D:\APMServ\APMServ5.2.6\MySQL5.1\bin

然后使用命令行远程登录测试

C:\>mysql -h 192.168.0.3 -u admin -p

启动从服务器的LAMP

 

 

四、创建主、从数据库bbk

1、主服务器创建bbk数据库

# mysql -u root -p

mysql> create database bbk;

mysql> show databases;

 

2、从服务器也同样创建一个bbk数据库

C:\>mysql -u root -p

mysql> create database bbk;

mysql> show databases;

 

五、配置主、从服务器的数据库配置文件

1、配置主服务器

# vi/etc/my.cnf                     增加红色部分

[mysqld]

###################

server-id=1

log-bin

##################

 

 

# service mysqld restart                重启mysql

# mysql -u root –p               

mysql> show master status;                                      查看主MySQL的工作状态

+-------------------+----------+--------------+------------------+

| File              | Position | Binlog_Do_DB | Binlog_Ignore_DB |

+-------------------+----------+--------------+------------------+

| mysqld-bin.000001 |       98 |              |                  |

+-------------------+----------+--------------+------------------+

1 row in set (0.00 sec)

 

 

 

 

2、配置从服务器

用文本编辑器打开my.ini

 D:\APMServ\APMServ5.2.6\MySQL5.1\my.ini               #增加红色部分

[mysqld]

basedir=D:/APMServ/APMServ5.2.6/MySQL5.1

datadir=D:/APMServ/APMServ5.2.6/MySQL5.1/data

port=3306

interactive_timeout=240

wait_timeout=240

#####################################

server-id=2

master-host=192.168.0.3

master-port=3306

master-user=admin

master-password=he

master-connect-retry=60

replicate-do-db=bbk

#######################################

 

重启APMServ

 

查看从服务器的状态

mysql>mysql –u root -p

mysql> show slave status\G;

*************************** 1. row ***************************

               Slave_IO_State: Waiting for master to send event

                  Master_Host: 192.168.0.3

                  Master_User: admin

                  Master_Port: 3306

                Connect_Retry: 60

              Master_Log_File: mysqld-bin.000001

          Read_Master_Log_Pos: 98

               Relay_Log_File: 20110305-0301-relay-bin.000004

                Relay_Log_Pos: 244

        Relay_Master_Log_File: mysqld-bin.000001

             Slave_IO_Running: Yes                     #这三个状态是最重要的参数

            Slave_SQL_Running: Yes

              Replicate_Do_DB: bbk

          Replicate_Ignore_DB:

           Replicate_Do_Table:

       Replicate_Ignore_Table:

      Replicate_Wild_Do_Table:

  Replicate_Wild_Ignore_Table:

                   Last_Errno: 0

                   Last_Error:

                 Skip_Counter: 0

          Exec_Master_Log_Pos: 98

              Relay_Log_Space: 407

              Until_Condition: None

               Until_Log_File:

                Until_Log_Pos: 0

           Master_SSL_Allowed: No

           Master_SSL_CA_File:

           Master_SSL_CA_Path:

              Master_SSL_Cert:

            Master_SSL_Cipher:

               Master_SSL_Key:

        Seconds_Behind_Master: 0

Master_SSL_Verify_Server_Cert: No

                Last_IO_Errno: 0

                Last_IO_Error:

               Last_SQL_Errno: 0

               Last_SQL_Error:

1 row in set (0.00 sec)

 

相关的命令

Slave start

Slave stop

Reset slave

Show slave status

Show master status

 

 

六、测试数据

1、主服务器写入数据

mysql>mysql –u root -p

mysql> use bbk;

mysql> create table t(id int,name char(10));

mysql> insert into t values(112,'hexianbin');

mysql> show tables;

+---------------+

| Tables_in_bbk |

+---------------+

| t             |

+---------------+

mysql> select * from t;

+------+-----------+

| id   | name      |

+------+-----------+

|  112 | hexianbin |

+------+-----------+

1 row in set (0.00 sec)

 

 

从服务器的数据同步查看

mysql> use bbk;

Database changed

mysql> show tables;

+---------------+

| Tables_in_bbk |

+---------------+

| t             |

+---------------+

 

mysql> select * from t;

+------+-----------+

| id   | name      |

+------+-----------+

|  112 | hexianbin |

+------+-----------+

至此,mysql主从服务器配置结束

 

 

故障排除

问题一:

 

登录phpMyAdmin测试:

提示:需要安装PHP 5.2以上的版本。

方法一:安装phpMyAdmin-2.9.0.2

下载phpMyAdmin-2.9.0.1

#unzip phpMyAdmin.zip

#mv phpMyAdmin /var/www/html/php

#cd /var/www/html/php

#vi libraries/config.default.php

#vi config.inc.php

$cfg['Servers'][$i]['user']          = 'root';      // MySQL user

$cfg['Servers'][$i]['password']      = 'he';          // MySQL password

$cfg['Servers'][$i]['port']          = '';  // MySQL port - leave blank for default port一般默认

 

方法二:源码安装PHP-5.3.8(未完)

php 下载

# tar -xvf php-5.3.8.tar.bz2

 

 

 

问题二web登录到phpMyAdmin上,

提示:在没有发现 PHP 的扩展设置mbstring, 而当前系统好像在使用宽字符集。没有 mbstring 扩展的 phpMyAdmin 不能正确识别字符串,可能产生不可意料的结果.

解决:安装php-mbstingrpm

# rpm -ivh php-mbstring-5.1.6-23.2.el5_3.i386.rpm

# service httpd restart

 

 

问题三:

安装并启动APMServ 5.2.6失败

原因:错误的解压路径:(文件夹有空格),注意解压的路径不能有空格或汉字,否则出错。

D:\Program Files\APMServ

错误提示:

 

正确的解压路径:

D:\APMServ\APMServ5.2.6

 

 

问题四修改密码

安装完MySQL登录数据库

# mysql -u root -p

Enter password:

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

 

解决方法:

# service mysqld stop                                        关闭Mysql服务

# mysqld_safe --skip-grant-table &                    屏蔽权限

Starting mysqld daemon with databases from /var/lib/mysql

# mysql -u root mysql                                      

mysql> UPDATE user SET password=PASSWORD('he') where USER='root';   修改root密码

mysql> FLUSH PRIVILEGES;

mysql> \q

修改后进行登录

# mysql -u root -p

Enter password:

 

问题五:权限问题

# yum install -y mysql-server

# /usr/bin/mysql start

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

 

解决:权限问题

# chown -R mysql:mysql /var/lib/mysql/

# mysql -u root -p

Enter password:            空密码,按Enter

 

 

阅读(1018) | 评论(0) | 转发(0) |
0

上一篇:快速搭建LAMP实验过程

下一篇:学习准备

给主人留下些什么吧!~~