master&slave 服务器的安装方法一样

安装:
#tar xf mysql-5.5.25a-linux2.6-x86_64.tar.gz -C /usr/local/mysql
#useradd -r mysql -s /sbin/nologin -M
#cd /usr/local
#ln -sv mysql-5.5.25a-linux2.6-x86_64 mysql
#chown -R mysql:mysql .
#cd mysql
mysql]#mkdir -p /mysql/data
msyql]#chown -R mysql:mysql /mysql/data
mysql]#scripts/mysql_install_db --user=mysql --datadir=/mysql/data  如果不更改数据存放的目录,那默认是在/usr/lcoal/mysql/data下
mysql]#chown -R root .
mysql]#cp support-files/my-huge.cnf /etc/my.cnf
mysql]#cp support-files/mysql.server /etc/init.d/mysqld
mysql]vi /etc/my.cnf  把此文件里的thread_concurrency = 8 这里的值改成计算机CPU的个数
在innodb处加一项,“innodb_file_per_table = 1”此项的功能是让一个是让一个文件就生成一个表
在[msyqld]容器下增加“datadir = /mysql/data”这个目录,保存退出!
mysql]service mysqld start
 
配置:
1、保证主从服务器的"my.cnf"文件中的“server-id”的唯一性,
保证"server-id = 1"这里的值与从服务器里的不相同,主服务器值为“1”,从服务器值为“10”
2、主服务器启用二进制日志功能,默认情况下已开启“log-bin=mysql-bin”
   从服务器不启用二进制日志功能,而启用中继日志功能,即:注释掉“log-bin=mysql-bin”
   并在其下边添加“relay-log=relay-bin”各“relay-log-index=relay-bin.index”
3、主服务器上添加拥有复制权限的用户
   mysql> grant replication client,replication slave on *.* to repl@'192.168.%.%' identified by '123456';
   mysql> flush privileges;  刷新权限
   mysql> show grants for repl@'192.168.%.%';  查看已建立的用户拥有的权限
4、重新启动从服务器
   #service mysqld restart
5、主服务器上
mysql>flush master; 删除所有的二进制日志索引文件中的二进制日志文件,重置二进制日志文件的索引文件为空,创建一个新的二进制日志文件
   从服务器上
mysql>flush slave;删除所有的中继日志索引文件中的中继日志文件,重置中继日志文件的索引文件为空,创建一个新的中继日志文件
5、从服务上执行
#/usr/local/mysql/bin/mysql   接入mysql
mysql>help chanage master to  查看“change master to”的用法
mysql>change master to master_host='192.168.133.150',master_user='repl',master_password='123456';
mysql>start slave;
mysql>show slave status\G  查看状态信息
 
 
 
 
 
 
mysql>show global variables like 'relay%'   查找关于relay的指令
 
#############################
当Mysql数据库连接密码忘记后:
1、service mysqld stop  停掉服务
2、]#mysqld _safe --skip-grant-tables --skip-networks   跳过受权表,并禁用网络,只能本地接入
3、mysql>update mysql.user set password=password('123456') where user='root';
4、]#killall mysqld