MySql解压版安装&配置多数据库&主从分离
2016-12-29 13:49
597 查看
基于windows操作系统,笔者使用MySql5.5,安装目录D:\tools。
安装解压版MySql步骤
1、解压文件到目录(D:\tools\MySql5.5_Main),作为主数据库。
2、配置环境变量
创建用户变量
添加系统变量,Path中添加(;%MYSQL_MAIN%\bin)
3、修改配置文件(my.ini)
需要注意的是server-id,如果是多个数据库,server-id依次增加。
4、添加服务(需要管理员身份运行CMD)
MySqlMain是服务的名字,–defaults-file:服务依赖文件。
启动、停止服务(需要管理员身份运行CMD)
卸载服务(需要管理员身份运行CMD)
首次登录
如果不知道密码,在my.ini中配置
成功后,修改配置文件,注释掉
1-4步完成mysql的安装,安装多个mysql,重复1-4,port需要修改成不同的,server-id 依次增加。
那么主纵数据库怎么配置呢?
1、主库配置方式:请查看上面的安装解压版MySql步骤。
2、主库创建账户:“slaver”,密码:”slaver”,目的是为了从库访问主库同步数据。账户和密码可以自定义。
3、
记下File和Position的值,后面会用到,下面来配置从库。
4、从库配置方式:请查看上面的安装解压版MySql步骤,在第3步中,需要多配置一项
意思是你要同步的数据库是哪个,tests是一个在主库上已近存在的库。(特别提醒,从库不需要手动建立tests库,有时候会遇到编码格式的问题,同步的时候,MySql会自动检索,如果没有则自动创建并且同步数据。)
5、OK,从库也创建好了,如果愿意的话,你可以创建10个从库,注册的服务名不能重复哦。
启动从库服务并登陆
解释下绑定、变更主从关系中的一些属性
MASTER_HOST:主库IP,MASTER_USER:访问主库的用户名,MASTER_PASSWORD:访问主库的密码,MASTER_PORT:主库的端口号,MASTER_LOG_FILE:主库的File,就是二进制日志名称,MASTER_LOG_POS:主库的Position,上面咱们记下来的两个值,用在这里。
笔者建议,如果是首次配子主从数据库,将MySql/data文件目录下的文件,除了mysql、performance_schema之外的文件全部删除了,然后启动服务,MASTER_LOG_FILE就会重mysql-bin.000001开始了,每次启动这个日志都会重新生成一个,后面的数字会依次增加。当然,不是每次重新启动MySql服务都要执行一次”CHANGE MASTER TO 。。。”,只要同步一次就OK了,这个关联关系会自动同步到主库的日志文件。
SHOW SLAVE STATUS\G; 执行玩的效果
主要看3项:
Slave_IO_Running: Yes //主库同步接口链接成功
Slave_SQL_Running: Yes //从库开启同步
Replicate_Do_DB: tests //同步的数据库
前两项一定都要是Yes。
好了,到这里一切都搞定了,可以测试下,在主库insert,从库就可以select到数据了^_^!
安装解压版MySql步骤
1、解压文件到目录(D:\tools\MySql5.5_Main),作为主数据库。
2、配置环境变量
创建用户变量
添加系统变量,Path中添加(;%MYSQL_MAIN%\bin)
3、修改配置文件(my.ini)
[client] loose-default-character-set = utf8 #password = your_password port = 3307 socket = /tmp/mysql.sock [mysqld] loose-default-character-set = utf8 port = 3307 basedir = D:/tools/MySql5.5 datadir = D:/tools/MySql5.5/data socket = /tmp/mysql.sock skip-external-locking key_buffer_size = 384M max_allowed_packet = 20M table_open_cache = 512 sort_buffer_size = 2M read_buffer_size = 2M read_rnd_buffer_size = 8M myisam_sort_buffer_size = 64M thread_cache_size = 8 query_cache_size = 32M # Try number of CPU's*2 for thread_concurrency thread_concurrency = 8 #skip-name-resolve ##跳过账户验证 log-bin=mysql-bin ##启动二进制日志(必选) [WinMySQLadmin] Server = D:/tools/MySql5.5/bin/mysqld.exe #启动服务可执行文件 server-id = 1
需要注意的是server-id,如果是多个数据库,server-id依次增加。
4、添加服务(需要管理员身份运行CMD)
mysqld --install MySqlMain --defaults-file="D:\tools\MySql5.5\my.ini"
MySqlMain是服务的名字,–defaults-file:服务依赖文件。
启动、停止服务(需要管理员身份运行CMD)
net start MySqlMain; net stop MySqlMain;
卸载服务(需要管理员身份运行CMD)
sc delete MySqlMain
首次登录
如果不知道密码,在my.ini中配置
skip-name-resolve,跳过密码验证
mysql -uroot;##可以直接登录 ##修改root账户的密码 use mysql; update user set password=password("yourpassword") where user="root"; flush privileges; exit ;
成功后,修改配置文件,注释掉
skip-name-resolve,重启服务,即可用密码登陆。
mysql -uroot -pyourpassword;
1-4步完成mysql的安装,安装多个mysql,重复1-4,port需要修改成不同的,server-id 依次增加。
那么主纵数据库怎么配置呢?
1、主库配置方式:请查看上面的安装解压版MySql步骤。
2、主库创建账户:“slaver”,密码:”slaver”,目的是为了从库访问主库同步数据。账户和密码可以自定义。
insert into mysql.user(Host,User,Password) values('%','slaver',password('slaver')); ## 账户授权(REPLICATION、SLAVE 这两个权限足够) GRANT REPLICATION SLAVE ON *.* TO 'slaver'@'192.168.1.1%' IDENTIFIED BY 'slaver';
3、
SHOW SLAVE STATUS;
记下File和Position的值,后面会用到,下面来配置从库。
4、从库配置方式:请查看上面的安装解压版MySql步骤,在第3步中,需要多配置一项
replicate-do-db = tests,在
#skip-name-resolve下加即可
意思是你要同步的数据库是哪个,tests是一个在主库上已近存在的库。(特别提醒,从库不需要手动建立tests库,有时候会遇到编码格式的问题,同步的时候,MySql会自动检索,如果没有则自动创建并且同步数据。)
5、OK,从库也创建好了,如果愿意的话,你可以创建10个从库,注册的服务名不能重复哦。
启动从库服务并登陆
STOP SLAVE; ## 停止同步 CHANGE MASTER TO MASTER_HOST='192.168.1.1',MASTER_USER='slaver',MASTER_PASSWORD='slaver',MASTER_PORT=3306,MASTER_LOG_FILE='mysql-bin.000004',MASTER_LOG_POS=107; ## 绑定、变更主从关系 START SLAVE; ##开启同步 SHOW SLAVE STATUS\G; ##查看同步链接状态
解释下绑定、变更主从关系中的一些属性
MASTER_HOST:主库IP,MASTER_USER:访问主库的用户名,MASTER_PASSWORD:访问主库的密码,MASTER_PORT:主库的端口号,MASTER_LOG_FILE:主库的File,就是二进制日志名称,MASTER_LOG_POS:主库的Position,上面咱们记下来的两个值,用在这里。
笔者建议,如果是首次配子主从数据库,将MySql/data文件目录下的文件,除了mysql、performance_schema之外的文件全部删除了,然后启动服务,MASTER_LOG_FILE就会重mysql-bin.000001开始了,每次启动这个日志都会重新生成一个,后面的数字会依次增加。当然,不是每次重新启动MySql服务都要执行一次”CHANGE MASTER TO 。。。”,只要同步一次就OK了,这个关联关系会自动同步到主库的日志文件。
SHOW SLAVE STATUS\G; 执行玩的效果
主要看3项:
Slave_IO_Running: Yes //主库同步接口链接成功
Slave_SQL_Running: Yes //从库开启同步
Replicate_Do_DB: tests //同步的数据库
前两项一定都要是Yes。
好了,到这里一切都搞定了,可以测试下,在主库insert,从库就可以select到数据了^_^!
相关文章推荐
- MySQL中的integer 数据类型
- MySQL存储过程
- mysql中int、bigint、smallint 和 tinyint的区别与长度
- mysql load data 导出、导入 csv
- source命令执行SQL脚本文件
- MySQL创建用户及权限控制
- MySQL管理数据表
- linux下mysql添加用户
- mysql procedure
- mysql触发器
- 解决mysql 开启logbin 导致存储过程报错
- MySQL 备份和恢复策略
- mac下安装mysql(转载)
- mysql 修改编码 Linux/Mac/Unix/通用(杜绝修改后无法启动的情况!)
- MySQL数据的导出、导入(mysql内部命令:mysqldump、mysql)
- mysql数据行转列
- Linux下修改MySQL编码的方法
- MySQL Server 日志