"MariaDB"의 두 판 사이의 차이
잔글 |
잔글 (→참고 문헌) |
||
(같은 사용자의 중간 판 6개는 보이지 않습니다) | |||
1번째 줄: | 1번째 줄: | ||
MariaDB를 정리 합니다. | MariaDB를 정리 합니다. | ||
− | *홈페이지 : | + | *홈페이지 : https://mariadb.org/ |
− | *다운로드 : | + | *다운로드 : https://downloads.mariadb.org/ |
− | *플랫폼 : | + | *플랫폼 : |
− | *라이선스 : | + | *라이선스 : |
− | ==MariaDB 개요== | + | == MariaDB 개요 == |
== CentOS 6.5에서 MariaDB 설치 == | == CentOS 6.5에서 MariaDB 설치 == | ||
17번째 줄: | 17번째 줄: | ||
|- | |- | ||
| style="background-color: rgb(241, 241, 241);" | | | style="background-color: rgb(241, 241, 241);" | | ||
− | [mariadb]<br/>name = MariaDB<br/>baseurl = | + | [mariadb]<br />name = MariaDB<br />baseurl = http://yum.mariadb.org/10.0/centos6-amd64<br />gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB<br />gpgcheck=1 |
|} | |} | ||
− | |||
− | |||
'''<span style="color: rgb(0, 0, 255);"><span style="font-size: larger;">MariaDB 설치</span></span>''' | '''<span style="color: rgb(0, 0, 255);"><span style="font-size: larger;">MariaDB 설치</span></span>''' | ||
28번째 줄: | 26번째 줄: | ||
|- | |- | ||
| style="background-color: rgb(241, 241, 241);" | | | style="background-color: rgb(241, 241, 241);" | | ||
− | yum update<br/>yum install MariaDB-client MariaDB-server MariaDB-devel | + | yum update<br />yum install MariaDB-client MariaDB-server MariaDB-devel |
− | service mysqld start<br/>mysql_secure_installationmysql -u root -p mysql<br/> quit | + | service mysqld start<br />mysql_secure_installationmysql -u root -p mysql<br /> quit |
|} | |} | ||
− | |||
− | |||
'''<span style="color: rgb(0, 0, 255);"><span style="font-size: larger;">MariaDB 환경 설정</span></span>''' | '''<span style="color: rgb(0, 0, 255);"><span style="font-size: larger;">MariaDB 환경 설정</span></span>''' | ||
45번째 줄: | 41번째 줄: | ||
|- | |- | ||
| style="background-color: rgb(241, 241, 241);" | | | style="background-color: rgb(241, 241, 241);" | | ||
− | yum update<br/>yum install MariaDB-client MariaDB-server MariaDB-devel | + | yum update<br />yum install MariaDB-client MariaDB-server MariaDB-devel |
− | service mysql start<br/>mysql_secure_installation | + | service mysql start<br />mysql_secure_installation |
− | mysql -u root -p mysql<br/> quit | + | mysql -u root -p mysql<br /> quit |
|} | |} | ||
55번째 줄: | 51번째 줄: | ||
== CentOS 7에서 MariaDB 설치 == | == CentOS 7에서 MariaDB 설치 == | ||
− | + | MariaDB 설치 | |
+ | <pre>yum -y install mariadb-server mariadb | ||
+ | |||
+ | systemctl restart mariadb.service | ||
+ | systemctl enable mariadb.service | ||
+ | |||
+ | # mysqladmin password | ||
+ | mysql_secure_installation | ||
+ | |||
+ | vi /etc/my.cnf | ||
+ | [mysqld] | ||
+ | default-storage-engine=InnoDB</pre> | ||
+ | <br />MariaDB UTF-8 설정 | ||
+ | <pre>vi /etc/my.cnf | ||
+ | [mysqld] | ||
+ | init_connect="SET collation_connection=utf8_general_ci" | ||
+ | init_connect="SET NAMES utf8" | ||
+ | character-set-server=utf8 | ||
+ | collation-server=utf8_general_ci | ||
+ | skip-character-set-client-handshake | ||
+ | |||
+ | vi /etc/my.cnf.d/client.cnf | ||
+ | [client] | ||
+ | default-character-set=utf8 | ||
+ | [client-mariadb] | ||
+ | default-character-set=utf8 | ||
+ | |||
+ | vi /etc/my.cnf.d/mysql-clients.cnf | ||
+ | [mysql] | ||
+ | default-character-set=utf8 | ||
+ | [mysqldump] | ||
+ | default-character-set=utf8 | ||
− | + | systemctl restart mariadb.service | |
− | + | mysql -u root -p비밀번호 mysql -e "show variables like 'c%'"</pre> | |
− | + | <br />MariaDB 데이터 폴더 위치 변경<br />#--- /data/database/mariadb<br />#--- SELinux 설정 변경 | |
− | + | <pre>mkdir -p /data/database/mariadb | |
− | + | systemctl stop mariadb.service | |
+ | vi /etc/my.cnf | ||
+ | [mysqld] | ||
+ | datadir=/data/database/mariadb | ||
− | + | cd /var/lib/mysql | |
− | + | tar cvf /data/mariadb.tar * | |
− | |||
− | |||
+ | chown mysql:mysql /data/database/mariadb | ||
+ | cd /data/database/mariadb | ||
+ | tar xvf /data/mariadb.tar | ||
+ | |||
+ | yum -y install policycoreutils-python | ||
+ | semanage fcontext -a -t mysqld_db_t "/data/database/mariadb(/.*)?" | ||
+ | restorecon -Rv /data/database/mariadb | ||
+ | chcon --reference=/var/lib/mysql /data/database/mariadb | ||
+ | |||
+ | systemctl start mariadb.service</pre> | ||
== MariaDB UTF-8 설정 == | == MariaDB UTF-8 설정 == | ||
78번째 줄: | 116번째 줄: | ||
== MariaDB JDBC Driver == | == MariaDB JDBC Driver == | ||
− | *다운로드 사이트 : https://downloads.mariadb.org/client-java/ | + | *다운로드 사이트 : https://downloads.mariadb.org/client-java/ |
== 관리자 가이드 == | == 관리자 가이드 == | ||
92번째 줄: | 130번째 줄: | ||
|} | |} | ||
− | |||
− | |||
SELinux 보안 설정 수정 | SELinux 보안 설정 수정 | ||
101번째 줄: | 137번째 줄: | ||
| style="background-color: rgb(241, 241, 241);" | | | style="background-color: rgb(241, 241, 241);" | | ||
setenforce 0 | setenforce 0 | ||
− | <div>vi /etc/selinux/config<br/> SELINUX=permissive<br/></div> | + | <div>vi /etc/selinux/config<br /> SELINUX=permissive<br /></div> |
|} | |} | ||
− | |||
− | |||
vi /etc/init.d/mysql | vi /etc/init.d/mysql | ||
114번째 줄: | 148번째 줄: | ||
|} | |} | ||
− | |||
− | |||
vi /etc/my.cnf.d/server.cnf | vi /etc/my.cnf.d/server.cnf | ||
122번째 줄: | 154번째 줄: | ||
|- | |- | ||
| style="background-color: rgb(241, 241, 241);" | | | style="background-color: rgb(241, 241, 241);" | | ||
− | [mysqld]<br/>datadir=/cloudnas/database/mysql | + | [mysqld]<br />datadir=/cloudnas/database/mysql |
|} | |} | ||
− | |||
− | |||
MariaDB를 기동 합니다. | MariaDB를 기동 합니다. | ||
136번째 줄: | 166번째 줄: | ||
|} | |} | ||
− | |||
− | |||
MariaDB를 데이터 폴더 변경 여부를 확인 합니다. | MariaDB를 데이터 폴더 변경 여부를 확인 합니다. | ||
149번째 줄: | 177번째 줄: | ||
|} | |} | ||
− | |||
− | |||
=== 오류 : Headers and client library minor version mismatch === | === 오류 : Headers and client library minor version mismatch === | ||
168번째 줄: | 194번째 줄: | ||
조치 방안 | 조치 방안 | ||
− | yum erase php-mysql<br/>yum install php-mysqlnd | + | yum erase php-mysql<br />yum install php-mysqlnd |
179번째 줄: | 205번째 줄: | ||
Galera Cluster에서 1개의 node만 write로 구성(DeadLock 회피)하고 Auto Increment (Table Lock 발생)를 사용하지 않으면 무단하게 구성할 수 있다고 합니다. | Galera Cluster에서 1개의 node만 write로 구성(DeadLock 회피)하고 Auto Increment (Table Lock 발생)를 사용하지 않으면 무단하게 구성할 수 있다고 합니다. | ||
+ | |||
+ | <pre class="fixed" style="padding: 9px; font-family: Monaco, Menlo, Consolas, 'Courier New', monospace; border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; margin-top: 0px; margin-bottom: 20px; line-height: 20px; word-break: break-all; word-wrap: normal; white-space: pre; border: 1px solid rgb(227, 227, 227); min-height: 20px; -webkit-box-shadow: rgba(0, 0, 0, 0.0470588) 0px 1px 1px inset; box-shadow: rgba(0, 0, 0, 0.0470588) 0px 1px 1px inset; overflow-x: auto; background-color: rgb(245, 245, 245);">yum install MariaDB-Galera-server MariaDB-client galera</pre> | ||
+ | == 참고 문헌 == | ||
− | |||
− | + | *[[MySQL|MySQL]] | |
+ | *[https://www.jopenbusiness.com/cms/MariaDB/README.md 오비컨 - MariaDB] | ||
+ | *[https://www.jopenbusiness.com/cms/MariaDB/MySQL.md 오비컨 - MySQL] | ||
− | [[Category:Database]] | + | [[Category:Database|Category:Database]] |
2019년 11월 5일 (화) 16:25 기준 최신판
MariaDB를 정리 합니다.
- 홈페이지 : https://mariadb.org/
- 다운로드 : https://downloads.mariadb.org/
- 플랫폼 :
- 라이선스 :
목차
MariaDB 개요
CentOS 6.5에서 MariaDB 설치
MariaDB 저장소 생성
vi /etc/yum.repos.d/MariaDB.repo
[mariadb] |
MariaDB 설치
yum update service mysqld start |
MariaDB 환경 설정
vi /etc/my.cnf
yum update service mysql start mysql -u root -p mysql |
CentOS 7에서 MariaDB 설치
MariaDB 설치
yum -y install mariadb-server mariadb systemctl restart mariadb.service systemctl enable mariadb.service # mysqladmin password mysql_secure_installation vi /etc/my.cnf [mysqld] default-storage-engine=InnoDB
MariaDB UTF-8 설정
vi /etc/my.cnf [mysqld] init_connect="SET collation_connection=utf8_general_ci" init_connect="SET NAMES utf8" character-set-server=utf8 collation-server=utf8_general_ci skip-character-set-client-handshake vi /etc/my.cnf.d/client.cnf [client] default-character-set=utf8 [client-mariadb] default-character-set=utf8 vi /etc/my.cnf.d/mysql-clients.cnf [mysql] default-character-set=utf8 [mysqldump] default-character-set=utf8 systemctl restart mariadb.service mysql -u root -p비밀번호 mysql -e "show variables like 'c%'"
MariaDB 데이터 폴더 위치 변경
#--- /data/database/mariadb
#--- SELinux 설정 변경
mkdir -p /data/database/mariadb systemctl stop mariadb.service vi /etc/my.cnf [mysqld] datadir=/data/database/mariadb cd /var/lib/mysql tar cvf /data/mariadb.tar * chown mysql:mysql /data/database/mariadb cd /data/database/mariadb tar xvf /data/mariadb.tar yum -y install policycoreutils-python semanage fcontext -a -t mysqld_db_t "/data/database/mariadb(/.*)?" restorecon -Rv /data/database/mariadb chcon --reference=/var/lib/mysql /data/database/mariadb systemctl start mariadb.service
MariaDB UTF-8 설정
MariaDB JDBC Driver
- 다운로드 사이트 : https://downloads.mariadb.org/client-java/
관리자 가이드
데이터 폴더 위치 변경
MariaDB를 종료 합니다.
service mysql stop |
SELinux 보안 설정 수정
setenforce 0 vi /etc/selinux/config
SELINUX=permissive |
vi /etc/init.d/mysql
datadir=/cloudnas/database/mysql |
vi /etc/my.cnf.d/server.cnf
[mysqld] |
MariaDB를 기동 합니다.
service mysql start |
MariaDB를 데이터 폴더 변경 여부를 확인 합니다.
mysql -uroot -p mysql
show variables where variable_name = 'datadir'; |
오류 : Headers and client library minor version mismatch
오류 메시지
Warning: mysql_connect(): Headers and client library minor version mismatch. Headers:50173 Library:50312 in /cloudnas/www/ossbiz/public_html/blog/wp-includes/wp-db.php on line 1409
버전 확인
php -i | grep 'Client API'
조치 방안
yum erase php-mysql
yum install php-mysqlnd
참고 문헌
Galera Cluster
Galera Cluster에서 1개의 node만 write로 구성(DeadLock 회피)하고 Auto Increment (Table Lock 발생)를 사용하지 않으면 무단하게 구성할 수 있다고 합니다.
yum install MariaDB-Galera-server MariaDB-client galera