Galera는 고가용성을 달성하기 위해 동기식 복제 기능을 갖춘 고성능 MariaDB 데이터베이스 솔루션을 제공합니다. Galera는 관계형 데이터베이스와 SQL(구조적 쿼리 언어)을 사용하여 데이터를 관리하는 오픈 소스 데이터베이스 관리 시스템인 MariaDB와 함께 배포됩니다. MariaDB는 원래 MySQL을 기반으로 하며 이전 버전과의 호환성을 유지합니다.
리노드 Marketplace 에서는 클라우드 관리자를 사용하여 컴퓨팅 인스턴스에 애플리케이션 클러스터를 쉽게 배포할 수 있습니다. 전체 단계는 Marketplace 앱 시작하기를 참조하세요.
이 Marketplace 앱은 3개의 컴퓨팅 인스턴스를 배포하여 각각 선택한 요금제 유형과 크기로 고가용성 및 이중화된 MeriaDB Galera 클러스터를 생성합니다. 이러한 각 컴퓨트 인스턴스는 청구서에 별도의 항목으로 표시된다는 점에 유의하세요. 대신 단일 컴퓨트 인스턴스에 MariaDB를 배포하려면 리노드를 통해 MySQL/MariaDB 배포하기( Marketplace )를 참조하세요.
- Cloud 관리자에 로그인하고 왼쪽 탐색 메뉴에서 Marketplace 링크를 선택합니다. 그러면 리노드 만들기 페이지가 표시되며, 미리 선택된 Marketplace 탭이 미리 선택되어 있습니다.
- 앱 선택 섹션에서 배포하려는 클러스터 앱을 선택합니다. Marketplace 클러스터로 배포되는 앱은 앱 이름 옆에 클러스터 레이블이 표시됩니다.
- 컴퓨팅 인스턴스 만들기 가이드의 단계와 조언에 따라 양식을 작성합니다. 선택한 Marketplace 앱에 따라 사용 가능한 추가 구성 옵션이 있을 수 있습니다. 호환되는 배포판, 권장 요금제 및 이 Marketplace 앱에 사용할 수 있는 추가 구성 옵션은 아래의 구성 옵션 섹션을 참조하세요.
- 리노드 생성 버튼을 클릭합니다. 첫 번째 컴퓨트 인스턴스가 프로비저닝되고 전원이 완전히 켜지면 소프트웨어 설치가 완료될 때까지 기다립니다. 이 시간 전에 인스턴스의 전원을 끄거나 다시 시작하면 다른 컴퓨팅 인스턴스가 배포되지 않을 수 있으며 소프트웨어 설치가 실패할 가능성이 높습니다.
앱이 완전히 설치되었는지 확인하려면 Marketplace 앱 시작하기 > 설치 확인을 참조하세요. 설치가 완료되면 배포 후 시작하기 섹션의 지침에 따라 애플리케이션에 액세스하여 사용을 시작합니다.
예상 배포 시간: Galera 클러스터는 첫 번째 컴퓨팅 인스턴스 프로비저닝이 완료된 후 5~10분 이내에 완전히 배포 및 구성되어야 합니다.
구성 옵션
- 지원되는 배포판: Ubuntu 22.04 LTS
- 권장 요금제: MySQL 데이터베이스의 크기와 예상 트래픽 양에 따라 다릅니다.
갈레라 옵션
- 클러스터 이름 (필수): 이 클러스터 배포에 사용할 이름을 입력합니다.
- 리노드 API 토큰 (필수): 귀하의 API 토큰은 이 클러스터의 일부로 추가 컴퓨트 인스턴스를 배포하는 데 사용됩니다. 이 토큰은 최소한 리노드에 대한 읽기/쓰기 액세스 권한이 있어야 합니다. 아직 토큰이 없는 경우 API 토큰이 없는 경우 API 액세스 토큰 받기를 참조하여 토큰을 만드세요.
- 모든 노드에 SSH 키 추가 (필수): 예를 선택하면 루트 사용자 계정( SSH 키 섹션)에 추가되는 모든 SSH 키가 배포된 모든 컴퓨팅 인스턴스의 제한된 사용자 계정에도 추가됩니다.
- Galera 클러스터 크기: 이 필드는 편집할 수 없지만 이 클러스터의 일부로 생성되는 컴퓨팅 인스턴스 수를 알려주는 데 사용됩니다.
TLS/SSL 인증서 옵션
다음 필드(위의 도메인 필드에 추가)는 자체 서명 TLS/SSL 인증서를 만들 때 사용됩니다.
- 국가 또는 지역 (필수): 본인 또는 소속 조직의 국가 또는 지역을 입력합니다.
- 주 또는 도 (필수): 본인 또는 소속 조직의 주 또는 시/도를 입력합니다.
- 지역 (필수): 본인 또는 소속 조직의 도시 또는 기타 지역을 입력합니다.
- 조직 (필수): 조직의 이름을 입력합니다.
- 이메일 주소 (필수): 인증서 파일에 사용할 이메일 주소를 입력합니다. 이 이메일 주소는 만료 시기를 포함하여 인증서의 상태에 대한 알림을 받을 수 있습니다.
- CA 일반 이름: 자체 서명된 인증 기관의 일반 이름입니다.
- 일반 이름: 도메인에 사용되는 일반 이름입니다.
경고: 사용자 및 데이터베이스 비밀번호 필드를 포함한 앱별 구성 필드 내에 큰따옴표 문자(")를 사용하지 마세요. 이 특수 문자는 배포 중에 문제를 일으킬 수 있습니다.
배포 후 시작하기
MariaDB와 상호 작용하기 위한 표준 도구는 mysql
client which installs with the mysql-server
패키지를 설치합니다. MariaDB 클라이언트는 터미널을 통해 사용됩니다.
루트 로그인
- 루트 사용자로 MySQL에 로그인하려면 다음을 수행하십시오.
sudo mysql -u root -p
- 메시지가 표시되면 Marketplace 앱을 실행할 때 설정한 MySQL 루트 비밀번호를 입력합니다. 그러면 아래와 같이 환영 헤더와 MySQL 프롬프트가 표시됩니다:
List of all MySQL commands:
Note that all text commands must be first on line and end with ';'
? (\?) Synonym for `help'.
clear (\c) Clear command.
connect (\r) Reconnect to the server. Optional arguments are db and host.
delimiter (\d) Set statement delimiter. NOTE: Takes the rest of the line as new delimiter.
edit (\e) Edit command with $EDITOR.
ego (\G) Send command to mysql server, display result vertically.
exit (\q) Exit mysql. Same as quit.
go (\g) Send command to mysql server.
help (\h) Display this help.
nopager (\n) Disable pager, print to stdout.
notee (\t) Don't write into outfile.
pager (\P) Set PAGER [to_pager]. Print the query results via PAGER.
print (\p) Print current command.
prompt (\R) Change your mysql prompt.
quit (\q) Quit mysql.
rehash (\#) Rebuild completion hash.
source (\.) Execute an SQL script file. Takes a file name as an argument.
status (\s) Get status information from the server.
system (\!) Execute a system shell command.
tee (\T) Set outfile [to_outfile]. Append everything into given outfile.
use (\u) Use another database. Takes database name as argument.
charset (\C) Switch to another charset. Might be needed for processing binlog with multi-byte charsets.
warnings (\W) Show warnings after every statement.
nowarning (\w) Don't show warnings after every statement.
For server side help, type 'help contents'
MariaDB [(none)]>
3. MySQL 프롬프트에 대한 명령 목록을 생성하려면 다음을 입력합니다. \h
. 그런 다음 다음 다음을 볼 수 있습니다.MariaDB [(none)]>
4. Marketplace 앱을 실행할 때 생성한 데이터베이스에 대한 액세스 권한을 부여합니다. MySQL 사용자. 이 예제에서는 데이터베이스가 호출됩니다. webdata
, 사용자 webuser
및 사용자의 암호는 password
. 자신의 암호를 입력해야 합니다. 이는 MySQL의 루트 암호와 다를 수 있습니다.GRANT ALL ON webdata.* TO 'webuser' IDENTIFIED BY 'password';
5. MySQL/MariaDB 유형을 종료하려면 다음 유형:exit
샘플 테이블 만들기
- 로그백 MySQL 사용자 를 설정할 때 Marketplace 앱을 실행합니다. 다음 예제에서는 MySQL 사용자 is
webuser
.sudo mysql -u webuser -p
- 라는 샘플 테이블 만들기
customers
. 이렇게 하면 형식의 고객 ID 필드가 있는 테이블이 만들어집니다.INT
정수(기본 키로 사용되는 새 레코드에 대해 자동 증분)와 고객의 이름을 저장하기 위한 두 가지 필드의 경우. 다음 예제에서webdata
는 Marketplace 앱을 실행할 때 생성한 데이터베이스입니다.
use webdata;
create table customers (customer_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, first_name TEXT, last_name TEXT);
3. 만든 테이블의 내용을 보려면 다음을 수행합니다.describe customers;
출력입니다:
+-------------+---------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------+---------+------+-----+---------+----------------+
| customer_id | int(11) | NO | PRI | NULL | auto_increment |
| first_name | text | YES | | NULL | |
| last_name | text | YES | | NULL | |
+-------------+---------+------+-----+---------+----------------+
4. 그런 다음 MySQL / MariaDB를 종료합니다.exit
MySQL/MariaDB에 대한 자세한 내용은 다음 가이드를 참조하세요:
갈레라 클러스터 Marketplace 앱은 Linode에 의해 Linode용으로 구축되었습니다. 앱 배포와 관련된 지원은 Linode 지원팀에 문의하세요. 도구 또는 소프트웨어 자체에 관한 지원은 Galera 설명서를 참조하세요.