>  기사  >  데이터 베이스  >  Mysql 단일 머신 다중 인스턴스를 구축하는 방법을 단계별로 가르쳐주십시오.

Mysql 단일 머신 다중 인스턴스를 구축하는 방법을 단계별로 가르쳐주십시오.

藏色散人
藏色散人앞으로
2021-11-19 16:56:281997검색

0 소개

인터넷 기술의 발달로 데이터의 양이 점점 늘어나고 있으며, 대용량 스토리지와 대용량 분석 시스템이 절실히 필요합니다. 이 문제를 해결할 수 있는 NoSQL 데이터베이스, Hadoop 파일 스토리지 등의 데이터 저장 방법이 있지만 관계형 데이터베이스는 여전히 장점이 있으며, 특히 구조화된 데이터 처리에 있어 성능이 여전히 뛰어납니다. 또는 회사의 프로젝트 개발 비용 측면에서 관계형 데이터베이스를 사용하는 것이 nosql 데이터베이스보다 더 간단하고 유지 관리가 쉽습니다.
따라서 이 글에서는 Mycat 사용의 첫 번째 단계(물론 이 단계는 필요하지 않음)를 소개하고, 대량의 데이터에 대한 느린 쿼리 문제를 처리하기 위해 단일 머신 다중 인스턴스를 구축하는 방법을 알아봅니다.

1 시작 항목

vim /etc/apparmor.d/usr.sbin.mysqld
/etc/init.d/apparmor reload

AppArmor(Application Armor)는 Linux 커널의 보안 모듈입니다. AppArmor를 사용하면 시스템 관리자가 각 프로그램을 보안 프로필과 연결하여 프로그램 기능을 제한할 수 있습니다. 간단히 말해서 AppArmor는 SELinux와 유사한 액세스 제어 시스템으로, 이를 통해 프로그램이 읽고, 쓰고, 실행할 수 있는 파일, 네트워크 포트를 열 수 있는지 여부 등을 지정할 수 있습니다. 기존 Unix 임의 액세스 제어 모듈을 보완하기 위해 AppArmor는 Linux 커널 2.6 버전에 통합된 필수 액세스 제어 메커니즘을 제공합니다.
자세한 정보 보기:
Apparmor - Linux 커널의 필수 액세스 제어 시스템
http://www.cnblogs.com/-Lei/a...

2 새 인스턴스의 데이터 디렉터리 생성

mkdir /var/lib/mysql2   创建目录
chown mysql /var/lib/mysql2  给mysql用户权限

3 생성 데이터베이스 초기화

  • mysql 5.7 이하
    mysql_install_db --user=mysql --datadir=/var/lib/mysql2

  • mysql 5.7 이상

  1. --user=mysql -- datadir=/ var/lib/mysql2

4 멀티 인스턴스 구성 파일 구성

[mysqld_multi]  
mysqld     = /install/mysql/bin/mysqld_safe  
mysqladmin = /install/mysql/bin/mysqladmin  
user       = root  
  
# The MySQL server  
[mysqld1]  
port            = 3306  
socket          = /tmp/mysql.sock  
datadir         =/var/lib/mysql  
pid-file        =/var/lib/mysql/mysql.pid  
user            =mysql  
  
log-bin         =master-bin  
log-bin-index           =master-bin.index  
...
[mysqld2]  
port            = 3307  
socket          =/tmp/mysql2.sock  
datadir         =/var/lib/mysql2  
pid-file        =/var/lib/mysql2/mysql.pid  
user            =mysql  
...

5 인스턴스 시작

mysqld_multi   --defaults-file=/etc/mysql/my_multi.cnf start 1
mysqld_multi   --defaults-file=/etc/mysql/my_multi.cnf start 2

6 Mysql

# 登陆Mysql服务器,执行mysql命令进入mysql控制台
mysql -uroot -P3307 -p -S/tmp/mysql2.sock
# 不用输入密码,直接回车
# 查看当前用户
select User from mysql.user;
# 创建Mysql用户test,并赋权限
CREATE USER 'test'@'%' IDENTIFIED BY '123456';
GRANT GRANT OPTION ON *.* TO 'test'@'%';
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER ON *.* TO 'test'@'%';

에 로그인 권장 학습: "mysql 비디오 튜토리얼"

위 내용은 Mysql 단일 머신 다중 인스턴스를 구축하는 방법을 단계별로 가르쳐주십시오.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 segmentfault.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제