搭建MySQL代理服务器实现读写分离+主从同步_MySQL
代理服务器
实验需求:
1.配置2台MySQL服务器(192.168.100.2,192.168.100.3)+1台代理服务器(192.168.100.1),实现MySQL代理的读写分离。
2.用户只需要访问MySQL代理服务器,实际的SQL查询、写入操作交给后台的2台MySQL服务器来完成。
3.2台MySQL服务器实现主从同步,其中Master服务器允许SQL查询、写入,Slave服务器只允许SQL查询。
Ubuntu下Nginx做负载实现高性能WEB服务器5---MySQL主主同步http://www.linuxidc.com/Linux/2012-06/61687p5.htm
生产环境MySQL主主同步主键冲突处理http://www.linuxidc.com/Linux/2013-07/86890.htm
MySQL主从失败 错误Got fatal error 1236http://www.linuxidc.com/Linux/2012-02/54729.htm
MySQL主从复制,单台服务器上实施http://www.linuxidc.com/Linux/2013-03/81913.htm
一 .MASTER数据库服务器(192.168.100.2)的配置
1.安装软件包(本实验采用MySQL5.6版本)
# rpm -qa | grep -i mysql
MySQL-shared-5.6.15-1.el6.x86_64
MySQL-devel-5.6.15-1.el6.x86_64
MySQL-embedded-5.6.15-1.el6.x86_64
MySQL-test-5.6.15-1.el6.x86_64
MySQL-server-5.6.15-1.el6.x86_64
MySQL-client-5.6.15-1.el6.x86_64
MySQL-shared-compat-5.6.15-1.el6.x86_64
2.启动服务并登录数据库本机对代理服务器做用户授权
# service mysql start && chkconfig mysql on
mysql> grant all on *.* to proxyuser@"192.168.100.1" identified by "123456";
3.创建测试数据库和表
mysql> create database proxydb;
mysql> create table proxydb.proxytab(id int);
mysql> insert into proxydb.proxytab values (2);
二 .SLAVE数据库服务器(192.168.100.3)的配置
1.安装软件包
2.启动服务并登录数据库本机对代理服务器做用户授权
# service mysql start && chkconfig mysql on
mysql> grant all on *.* to proxyuser@"192.168.100.1" identified by "123456"; //与MASTER数据库服务器做一样的授权
3.创建测试数据库和表
mysql> create database proxydb; //创建一样的库和表
mysql> create table proxydb.proxytab(id int);
mysql> insert into proxydb.proxytab values (3); //为了能测试区分2台不同数据库服务器,先插入不同数据
三.MySQL代理服务器配置
1.在做代理服务器上测试授权用户能否登录2台数据库服务器
# mysql -h192.168.100.2 -uproxyuser -p123456 //登录MASTER服务器
mysql> select * from proxydb.proxytab;
+------+
| id |
+------+
| 2 |
+------+
1 row in set (0.00 sec)
# mysql -h192.168.100.3 -uproxyuser -p123456 //登录SLAVE服务器
mysql> select * from proxydb.proxytab;
+------+
| id |
+------+
| 3 |
+------+
1 row in set (0.00 sec)
2.释放3306端口
# service mysqld stop
# chkconfig mysqld off
# netstat -tulnp | grep :3306
3.安装提供代理服务器的软件包
# tar zxvf mysql-proxy-0.8.3-linux-rhel5-x86-64bit.tar.gz
# mv mysql-proxy-0.8.3-linux-rhel5-x86-64bit /usr/local/mysql-proxy //此包为绿色免安装
# yum -y install lua //此软件使用LUA脚本语言,因此需要安装好lua软件包
代理服务启动时 会设置 负责写的数据库 负责读数据库服务器
调用脚本来区分用户的访问类型
指定自己监听的端口
4.启动代理服务
cd /usr/local/mproxy/bin/
使用bin目录下的mysql-proxy脚本来启动代理服务
# ./mysql-proxy -P 192.168.100.1:3306 -r 192.168.100.3:3306 -b 192.168.100.2:3306 -s /usr/local/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua &
主要命令选项:
-P:指定代理监听的IP地址、端口
-r:指定读服务器的IP地址、端口
-b:指定写服务器的IP地址、端口
-s:指定lua脚本文件
--keepalive:如果服务进程崩溃,尝试重启此进程
5.查看代理进程是否运行
# jobs
# netstat -tulnp | grep :3306
tcp 0 0 192.168.100.1:3306 0.0.0.0:* LISTEN 3314/mysql-proxy
//代理进程必须处于运行状态,客户端才能通过代理服务访问到后端的数据库服务器。
6.查看读写分离脚本
# vim /usr/local/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua
……
40 min_idle_connections = 4, //默认并发请求大于4才实行读写分离
41 max_idle_connections = 8,
更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2014-05/102265p2.htm

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











몇몇 Windows 사용자는 시스템의 Google Chrome 브라우저에서 일부 웹사이트에 액세스하려고 할 때 웹페이지에 액세스할 수 없다고 불평했습니다. 또한 오류 코드 ERR_ADDRESS_UNREACHABLE과 함께 "사이트에 연결할 수 없습니다"라는 메시지가 브라우저에 표시됩니다. 이 문제에는 여러 가지 잠재적인 이유가 있을 수 있습니다. 웹사이트 서버 문제, 프록시 서버 설정, 불안정한 인터넷 연결 등이 원인일 수 있습니다. 비슷한 문제가 발생하더라도 당황하지 마세요. 이 글의 문제를 깊이 분석한 후, 우리는 다양한 해결책을 얻었습니다. 계속하기 전에 다음 해결 방법을 시도해 보십시오. 사용자가 다른 장치에서 사이트에 액세스하려고 하는데 문제가 없는지 확인한 다음 이 방법을 사용하십시오.

소셜 미디어의 급속한 발전으로 Xiaohongshu는 가장 인기 있는 소셜 플랫폼 중 하나가 되었습니다. 사용자는 Xiaohongshu 계정을 만들어 자신의 개인 신원을 표시하고 다른 사용자와 소통하고 상호 작용할 수 있습니다. 사용자의 Xiaohongshu 번호를 찾으려면 다음의 간단한 단계를 따르세요. 1. Xiaohongshu 계정을 사용하여 사용자를 찾는 방법은 무엇입니까? 1. Xiaohongshu 앱을 열고 오른쪽 하단에 있는 "검색" 버튼을 클릭한 다음 "메모" 옵션을 선택합니다. 2. 노트 목록에서 찾고자 하는 사용자가 게시한 노트를 찾아보세요. 클릭하시면 메모 세부정보 페이지로 이동합니다. 3. 노트 상세페이지에서 해당 사용자의 아바타 아래 '팔로우' 버튼을 클릭하여 해당 사용자의 개인 홈페이지로 진입합니다. 4. 이용자 개인 홈페이지 우측 상단의 점 3개 버튼 클릭 후 '개인정보' 선택

로컬 사용자 및 그룹 유틸리티는 컴퓨터 관리에 내장되어 있으며 콘솔에서 또는 독립적으로 액세스할 수 있습니다. 그러나 일부 사용자는 Windows 11에 로컬 사용자 및 그룹이 누락되어 있음을 발견합니다. 액세스 권한이 있는 일부 사용자에게는 이 스냅인이 이 버전의 Windows 10에서 작동하지 않을 수 있다는 메시지가 표시됩니다. 이 컴퓨터의 사용자 계정을 관리하려면 제어판의 사용자 계정 도구를 사용하십시오. 이 문제는 Windows 10의 이전 버전에서 보고되었으며 일반적으로 사용자 측의 문제 또는 감독으로 인해 발생합니다. Windows 11에서 로컬 사용자 및 그룹이 누락되는 이유는 무엇입니까? Windows Home 버전을 실행 중이며 Professional 버전 이상에서는 로컬 사용자 및 그룹을 사용할 수 있습니다. 활동

Ubuntu 시스템에서는 루트 사용자가 일반적으로 비활성화되어 있습니다. 루트 사용자를 활성화하려면 passwd 명령을 사용하여 비밀번호를 설정한 다음 su- 명령을 사용하여 루트로 로그인할 수 있습니다. 루트 사용자는 무제한 시스템 관리 권한을 가진 사용자입니다. 그는 파일, 사용자 관리, 소프트웨어 설치 및 제거, 시스템 구성 변경에 액세스하고 수정할 수 있는 권한을 가지고 있습니다. 루트 사용자와 일반 사용자 사이에는 분명한 차이가 있습니다. 루트 사용자는 시스템에서 가장 높은 권한과 더 넓은 제어 권한을 갖습니다. 루트 사용자는 일반 사용자가 할 수 없는 중요한 시스템 명령을 실행하고 시스템 파일을 편집할 수 있습니다. 이 가이드에서는 Ubuntu 루트 사용자, 루트로 로그인하는 방법, 일반 사용자와 어떻게 다른지 살펴보겠습니다. 알아채다

Mozilla Firefox, Google Chrome, Internet Explorer 등과 같은 널리 사용되는 웹 브라우저를 통해 인터넷에 액세스할 때 많은 사용자가 프록시 서버가 응답하지 않는 문제에 직면합니다. 이 오류가 컴퓨터에 나타나는 주된 이유는 잘못된 프록시 설정 때문일 수 있습니다. 잘못된 프록시 설정은 프록시를 비활성화하여 수정할 수 있으므로 문제를 해결할 수 있습니다. 이 문서에서는 컴퓨터에서 프록시를 쉽게 비활성화하고 프록시 서버가 응답하지 않는 문제를 해결하는 방법을 3가지 방법을 통해 설명합니다. 이 간단한 트릭을 배우려면 계속 읽어보세요. 방법 1: 인터넷 속성을 통해 프록시 비활성화 1단계: W를 동시에 누르세요

권한으로 인해 특정 폴더에 항상 액세스할 수 있는 것은 아닙니다. 오늘 가이드에서는 Windows 11의 기존 하드 드라이브에 있는 사용자 폴더에 액세스하는 방법을 보여 드리겠습니다. 프로세스는 간단하지만 드라이브 크기에 따라 시간이 걸릴 수 있으며 때로는 몇 시간이 걸릴 수도 있으므로 인내심을 갖고 이 가이드의 지침을 자세히 따르십시오. 기존 하드 드라이브에 있는 사용자 폴더에 액세스할 수 없는 이유는 무엇입니까? 사용자 폴더는 다른 컴퓨터의 소유이므로 수정할 수 없습니다. 이 폴더에 대한 소유권 외에는 어떤 권한도 없습니다. 오래된 하드 드라이브에서 사용자 파일을 여는 방법은 무엇입니까? 1. 폴더 소유권을 가져오고 권한을 변경합니다. 이전 사용자 디렉터리를 찾아 마우스 오른쪽 버튼으로 클릭하고 속성을 선택합니다. "안"으로 이동

Ubuntu 시스템에 많은 사용자가 추가되었습니다. 더 이상 사용하지 않는 사용자를 삭제하고 싶습니다. 아래의 자세한 튜토리얼을 살펴보겠습니다. 1. 터미널 명령줄을 열고 userdel 명령을 사용하여 지정된 사용자를 삭제합니다. 2. 삭제 시 반드시 일반 사용자 디렉터리에 있어야 합니다. 아래 그림과 같이 이 권한이 없습니다. 3. 삭제 명령을 실행한 후 실제로 삭제되었는지 어떻게 판단할 수 있나요? 다음으로 아래 그림과 같이 cat 명령을 사용하여 passwd 파일을 엽니다. 4. 삭제된 사용자 정보가 더 이상 passwd 파일에 없는 것을 볼 수 있으며 이는 아래 그림과 같이 사용자가 삭제되었음을 증명합니다. 5. 그런 다음 홈 파일을 입력합니다.

sudo(수퍼유저 실행)는 일반 사용자가 루트 권한으로 특정 명령을 실행할 수 있도록 하는 Linux 및 Unix 시스템의 핵심 명령입니다. sudo의 기능은 주로 다음 측면에 반영됩니다. 권한 제어 제공: sudo는 사용자에게 일시적으로 수퍼유저 권한을 얻을 수 있는 권한을 부여하여 시스템 리소스와 민감한 작업을 엄격하게 제어합니다. 일반 사용자는 필요할 때만 sudo를 통해 임시 권한을 얻을 수 있으며, 항상 슈퍼유저로 로그인할 필요는 없습니다. 향상된 보안: sudo를 사용하면 일상적인 작업 중에 루트 계정을 사용하지 않아도 됩니다. 모든 작업에 루트 계정을 사용하면 올바르지 않거나 부주의한 작업에는 전체 권한이 부여되므로 예기치 않은 시스템 손상이 발생할 수 있습니다. 그리고
