Maria db 서버 구축 방법


데이터베이스 서버는 오늘날의 애플리케이션에 필요한 네트워크 인프라의 중요한 구성 요소입니다. 데이터 저장, 검색, 업데이트 및 삭제 (필요한 경우) 기능이 없으면 웹 및 데스크톱 앱의 유용성과 범위가 매우 제한됩니다.

Maria db 서버 구축 방법

또한 데이터베이스 서버를 설치, 관리 및 구성하는 방법 (예상대로 작동하도록)을 아는 것은 모든 시스템 관리자가 가져야하는 필수 기술입니다.

이 기사에서는 MariaDB 데이터베이스 서버를 설치하고 보호하는 방법을 간략하게 검토 한 다음이를 구성하는 방법을 설명합니다.

MariaDB 서버 설치 및 보안

CentOS 7.x에서 MariaDB는 MySQL을 대체했으며, 이는 여전히 Ubuntu에서 찾을 수 있습니다 (MariaDB와 함께). "openSUSE도 마찬가지입니다.

간결함을 위해이 자습서에서는 MariaDB 만 사용하지만 이름과 개발 철학이 다른 것 외에도 두 관계형 데이터베이스 관리 시스템 (줄여서 RDBMS)이 거의 동일하다는 점에 유의하십시오.

이는 클라이언트 측 명령이 MySQL과 MariaDB에서 동일하며 구성 파일의 이름이 지정되고 동일한 위치에 있음을 의미합니다.

MariaDB를 설치하려면 다음을 수행하십시오.

--------------- On CentOS/RHEL 7 and Fedora 23 --------------- 
# yum update && yum install mariadb mariadb-server # CentOS 

--------------- On Debian and Ubuntu --------------- 
$ sudo aptitude update && sudo aptitude install mariadb-client mariadb-server 

--------------- On openSUSE --------------- 
# zypper update && zypper install mariadb mariadb-tools # openSUSE

Ubuntu에서는 RDBMS 루트 사용자의 암호를 입력하라는 메시지가 표시됩니다.

위의 패키지가 설치되면 데이터베이스 서비스가 실행 중이고 부팅시 시작되도록 활성화되었는지 확인하십시오 (CentOS 및 openSUSE에서는이 작업을 수동으로 수행해야하는 반면 Ubuntu에서는 설치 프로세스가 이미 처리했습니다). 당신을 위해) :

--------------- On CentOS/RHEL 7 and Fedora 23 --------------- 
# systemctl start mariadb && systemctl enable mariadb 

--------------- On openSUSE --------------- 
# systemctl start mysql && systemctl enable mysql

그런 다음 \u003ccode\u003e mysql_secure_installation \u003c/ code\u003e 스크립트를 실행하십시오. 이 프로세스를 통해 다음을 수행 할 수 있습니다.

  1. set / reset the password for the RDBMS root user
  2. remove anonymous logins (thus enabling only users with a valid account to log in to the RDBMS)
  3. disable root access for machines other than localhost
  4. remove the test database (which anyone can access)
  5. activate the changes associated with 1 through 4.

이 프로세스에 대한 자세한 설명은 RHEL/CentOS/Fedora 및 Debian/Ubuntu에 MariaDB 데이터베이스 설치의 설치 후 섹션을 참조하십시오.

MariaDB 서버 구성

기본 구성 옵션은 /etc/mysql/my.cnf , /etc/my.cnf ~ 파일에서 주어진 순서로 읽습니다. /.my.cnf .

대부분의 경우 \u003ccode\u003e /etc/my.cnf \u003c/ code\u003e 만 존재합니다. 이 파일에서 서버 전체 설정을 지정합니다 (각 사용자에 대해 \u003ccode\u003e ~/.my.cnf \u003c/ code\u003e에서 동일한 설정으로 재정의 할 수 있음).

\u003ccode\u003e my.cnf \u003c/ code\u003e에 대해 가장 먼저 주목해야 할 점은 설정이 범주 (또는 그룹)로 구성되어 각 범주 이름이 대괄호로 묶여 있다는 것입니다.

서버 시스템 구성은 \u003ccode\u003e [mysqld] \u003c/ code\u003e 섹션에 있으며, 일반적으로 아래 표에서 처음 두 설정 만 찾을 수 있습니다. 나머지는 자주 사용되는 다른 옵션입니다 (표시된 경우 선택한 사용자 지정 값으로 기본값을 변경합니다).

서비스가 기본 주소 (192.168.0.13)에서만 수신하도록 지시하도록이를 변경합니다.

기본값 (3306)을 20500으로 대체합니다 (하지만 다른 포트가 해당 포트를 사용하고 있지 않은지 확인해야합니다). \u003cbr /\u003e\n"port u003d 20500

어떤 사람들은 모호함을 통한 보안이 좋은 방법이 아니라고 주장하지만, 상위 포트에 대한 기본 응용 프로그램 포트를 변경하는 것은 포트 스캔을 막기위한 기초적이지만 효과적인 방법입니다. \u003c/ td\u003e\n"

기본값을 256MB로 바꿉니다.

권한을 결정하기 위해 호스트 이름이 필요하지 않은 경우 값을 1로 설정하여이 변수를 비활성화하는 것이 좋습니다 (연결 및 쿼리 속도를 높이기 위해).

1) 반복 쿼리 수 및 2) 반복 쿼리가 반환 할 것으로 예상되는 대략적인 레코드 수를 기반으로 요구 사항에 맞는 쿼리 캐시 크기를 선택해야합니다. 당분간이 값을 100MB로 설정합니다.

다시 말하지만 이것은 예상하는 연결 수에 따라 다릅니다. 이 값을 max_connections 수의 절반으로 안전하게 설정할 수 있습니다.

# yum install policycoreutils-python
# semanage port -a -t mysqld_port_t -p tcp 20500

그런 다음 MariaDB 서비스를 다시 시작합니다.

MariaDB 성능 조정

특정 요구 사항에 따라 구성을 확인하고 조정하는 데 도움이되도록 mysqltuner (데이터베이스 서버의 성능을 향상시키고 안정성을 높이기위한 제안을 제공하는 스크립트)를 설치할 수 있습니다.

# wget https://github.com/major/MySQLTuner-perl/tarball/master
# tar xzf master

그런 다음 디렉토리를 tarball에서 추출한 폴더로 변경합니다 (정확한 버전은 경우에 따라 다를 수 있음).

# cd major-MySQLTuner-perl-7dabf27

실행합니다 (관리 MariaDB 계정의 자격 증명을 입력하라는 메시지가 표시됨)

# ./mysqltuner.pl

스크립트의 출력은 그 자체로 매우 흥미롭지 만 조정할 변수가 권장 값과 함께 나열되는 맨 아래로 건너 뛰겠습니다.

Maria db 서버 구축 방법

\u003ccode\u003e query_cache_type \u003c/ code\u003e 설정은 쿼리 캐시가 비활성화되었는지 (0) 또는 활성화되었는지 (1)를 나타냅니다. 이 경우 mysqltuner는이를 비활성화 할 것을 권장합니다.

그렇다면 지금 비활성화해야하는 이유는 무엇입니까? 그 이유는 쿼리 캐시가 주로 읽기/쓰기가 많은 시나리오에서 유용하기 때문입니다 (데이터베이스 서버를 방금 설치했기 때문에 우리의 경우는 아님).

경고 : 프로덕션 서버의 구성을 변경하기 전에 전문 데이터베이스 관리자에게 문의하여 mysqltuner에서 제공 한 권장 사항이 기존 설정에 부정적인 영향을 미치지 않는지 확인하는 것이 좋습니다.

요약

이 기사에서는 MariaDB 데이터베이스 서버를 설치하고 보호 한 후 구성하는 방법을 설명했습니다. 위의 표에 나열된 구성 변수는 사용할 서버를 준비하거나 나중에 조정할 때 고려할 수있는 몇 가지 설정에 불과합니다. 변경하기 전에 항상 공식 MariaDB 문서를 참조하거나 MariaDB 성능 조정 팁을 참조하십시오.

항상 그렇듯이이 기사에 대한 질문이나 의견이 있으면 언제든지 알려주십시오. 사용하고 싶은 다른 서버 설정이 있습니까? 아래 댓글 양식을 사용하여 나머지 커뮤니티와 자유롭게 공유하십시오.