Development/Environment

CentOS7에 MariaDB 설치하기 :: MariaDB install for CentOS7

고고마코드 2022. 11. 17. 17:25
반응형

MariaDB 저장소 추가

MariaDB를 다운받기 위해서는 yum 저장소에 MariaDB 저장소를 추가해야 합니다.

vi /etc/yum.repos.d/MariaDB.repo
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.3/centos7-amd64/
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

baseurl의 경우 본인이 설치해야 하는 버전과 설치 환경에 맞게 입력해야 합니다.
http://mirror.mariadb.org/yum/ 경로에서 확인할 수 있습니다.

저장 후 yum에 저장소가 제대로 추가 되었는지 확인합니다.

yum repolist


MariaDB 설치

yum install -y MariaDB

설치가 잘 됐는지 확인합니다.

# rpm -qa | grep MariaDB
MariaDB-compat-10.3.37-1.el7.centos.x86_64
MariaDB-common-10.3.37-1.el7.centos.x86_64
MariaDB-server-10.3.37-1.el7.centos.x86_64
MariaDB-client-10.3.37-1.el7.centos.x86_64

설치하려던 버전이 잘 설치가 되었는지 확인하고 추가로 아래 명령어를 통해 확인합니다.
mariadb --version 또는 mysql --version
설치 환경에 따라 둘 중 작동하는 것으로 버전을 확인하면 됩니다.


MaraiDB Service

실행

service mariadb start 또는 service mysql start
마찬가지로 작동하는 것으로 MariaDB를 실행하면 됩니다.
만약 service command not found 라는 오류가 발생한다면 yum -y install initscripts 명령어로 패키지를 설치해 보세요.
그래도 안 된다면 아래 명령어로 실행하세요.
systemctl start mariadb 또는 systemctl start mysql

확인

service mariadb status 또는 service mysql status
systemctl status mariadb 또는 systemctl status mysql

명령어 입력 시 Active: active (running)가 보인다면 실행중입니다.
만약 실행중이 아니라면 Active: inactive (dead)로 보입니다.

중지

service mariadb stop 또는 service mysql stop
systemctl stop mariadb 또는 systemctl stop mysql

재시작

service mariadb restart 또는 service mysql restart
systemctl restart mariadb 또는 systemctl restart mysql


root password set

/usr/bin/mysqladmin -u root password

위 명령어 입력 시 password 입력하는 화면이 출력됩니다.
원하는 password 입력하시면 됩니다.


MaraiDB 접속

위의 MariaDB Service 섹션에서 서비스를 실행 후 접속할 수 있습니다.

mysql -u root -p
Enter password: #비밀번호 입력

MariaDB [(none)]>
이렇게 명령창이 바뀌었다면 연결 성공입니다.
확인하고 싶으면 show databses; 를 입력해 보세요.


character set 변경

서버의 기본 설정은 latin1이라 지금 변경해야 편합니다.

show variables like 'c%';

+----------------------------------+----------------------------+
| Variable_name                    | Value                      |
+----------------------------------+----------------------------+
| character_set_client             | utf8mb4                    |
| character_set_connection         | utf8mb4                    |
| character_set_database           | utf8mb4                    |
| character_set_filesystem         | binary                     |
| character_set_results            | utf8mb4                    |
| character_set_server             | utf8mb4                    |
| character_set_system             | utf8                       |
| character_sets_dir               | /usr/share/mysql/charsets/ |
| check_constraint_checks          | ON                         |
| collation_connection             | utf8mb4_general_ci         |
| collation_database               | utf8mb4_unicode_ci         |
| collation_server                 | utf8mb4_unicode_ci         |
| column_compression_threshold     | 100                        |
| column_compression_zlib_level    | 6                          |
| column_compression_zlib_strategy | DEFAULT_STRATEGY           |
| column_compression_zlib_wrap     | OFF                        |
| completion_type                  | NO_CHAIN                   |
| concurrent_insert                | AUTO                       |
| connect_timeout                  | 10                         |
| core_file                        | OFF                        |
+----------------------------------+----------------------------+

현재 설정된 character set 을 확인할 수 있습니다.

변경하기 위해서는 my.cnf 파일을 열어서 character set을 직접 정해주면 됩니다.

vi /etc/my.cnf
#
# This group is read both by the client and the server
# use it for options that affect everything
#
[client-server]

[client]
default-character-set=utf8mb4

[mysql]
default-character-set=utf8mb4

[mysqld]
collation-server = utf8mb4_unicode_ci
#init-connect='SET NAMES utf8mb4'
character-set-server = utf8mb4

[mysqldump]
default-character-set=utf8mb4

#
# include *.cnf from the config directory
#
!includedir /etc/my.cnf.d

MariaDB 서비스 재실행 후 다시 연결해서 character set을 확인해 보세요.


설치 중 만난 오류

error 2019 Can't initialize character set unknown (path compiled in)

해당 오류가 나오면 dns 설정 관련 오류라는 내용이 많았는데,
나의 경우는 그런 결과가 아니었습니다.
이리 해봐도 저리 해봐도 해결을 할 수가 없어서 MariaDB 관련 패키지를 모두 삭제하고
재설치 후 해결할 수 있었습니다.

yum list installed | grep MariaDB
MariaDB-client.x86_64                   10.3.37-1.el7.centos           @mariadb
MariaDB-common.x86_64                   10.3.37-1.el7.centos           @mariadb
MariaDB-compat.x86_64                   10.3.37-1.el7.centos           @mariadb
MariaDB-server.x86_64                   10.3.37-1.el7.centos           @mariadb
yum remove MariaDB-client
yum remove MariaDB-common
yum remove MariaDB-compat
yum remove MariaDB-server

반응형