MariaDB 설치 - CentOS 7

2023. 3. 17. 19:00이것저것

728x90

 

 

MariaDB 설치 - CentOS 7

MariaDB 설치1 CentOS7 에 마리아를 설치 하는 것인 데 정확하게는 다시 빌드 해봐야 알 듯 하다. 그...

blog.naver.com

MariaDB 설치1

CentOS7 에 마리아를 설치 하는 것인 데 정확하게는 다시 빌드 해봐야 알 듯 하다.

 

 

그룹과 사용자 추가

groupadd -g 51 mysql &&
useradd -c "MySQL Server" -d /srv/mysql -g mysql -s /bin/false -u 51 mysql
 

 

파일 다운로드

 

https://downloads.mariadb.org/interstitial/mariadb-10.2.8/source/mariadb-10.2.8.tar.gz

 

 

사전 준비 작업(라이브러리)

OpenSSL -devel 설치

yum install openssl-devel
 

libevent2

wget https://github.com/libevent/libevent/releases/download/release-2.1.8-stable/libevent-2.1.8-stable.tar.gz

tar xfz libevent-2.1.8-stable.tar.gz
./configure --prefix=/usr --disable-static && make
 

빌드하기

mkdir build && cd build
cmake ..
 

 

그런다음,

make install && ln -sfv /usr/local/mysql/include/mysql/{mariadb,mysql}_version.h
 

 

환경설정

 

환경설정 파일들

 

/etc/my.cnf 그리고 ~/.my.cnf

 

환경설정 정보

mkdir/etc/mysql

#기본 환경 설정 파일 만들기
touch /etc/ my.cnf
/etc/my.cnf
 

루트 사용자로 다음 명령을 사용한다.

install -v -dm 755 /etc/mysql && cat> /etc/mysql/my.cnf << "EOF"
 
# Begin /etc/mysql/my.cnf
# The following options will be passed to all MySQL clients

[client]
#password = your_password
port = 3306
socket = /run/mysqld/mysqld.sock

# The MySQL server
[mysqld]
port = 3306
socket = /run/mysqld/mysqld.sock
datadir = /srv/mysql
skip-external-locking
key_buffer_size = 16M
max_allowed_packet = 1M
sort_buffer_size = 512K
net_buffer_length = 16K
myisam_sort_buffer_size = 8M

# Don't listen on a TCP/IP port at all.
skip-networking

# required unique id between 1 and 2^32 - 1
server-id = 1

# Uncomment the following if you are using BDB tables
#bdb_cache_size = 4M
#bdb_max_lock = 10000

# InnoDB tables are now used by default
innodb_data_home_dir = /srv/mysql
innodb_log_group_home_dir = /srv/mysql
# All the innodb_xxx values below are the default ones:
innodb_data_file_path = ibdata1:12M:autoextend
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
innodb_buffer_pool_size = 128M
innodb_log_file_size = 48M
innodb_log_buffer_size = 16M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates

[isamchk]
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

[myisamchk]
key_buffer_size = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

[mysqlhotcopy]
interactive-timeout

# End /etc/mysql/my.cnf
EOF

이제 데이터베이스를 설치 할 수 있으며 ownership을 권한이 없는 유저와 그룹에 할당 할 수 있다(루트 사용자로 실행한다)

export PATH=$PATH:/usr/local/mysql/scripts/:/usr/local/mysql/bin/ &&
chown -R mysql:mysql /srv/mysql &&
mysql_install_db --basedir=/usr/local/mysql --datadir=/srv/mysql --user=mysql
 

MariaDB 서버가 구동 되기 위해서는 환경설정이 더 필요 하다. 루트 사용자 권한으로 다음 명령어를 사용하여 시작한다.

chown -R mysql:mysql /var/log/mariadb/ &&
install -v -m755 -o mysql -g mysql -d /run/mysqld &&
mysqld_safe --user=mysql 2>&1 >/dev/null &
 

관리자용 패스워드가 설정되지 않는 것이 기본 설치여서, 루트 권한으로 다음 명령을 사용해서 패스워드를 설정한다.

 mysqladmin -u root password <password>
 

서버의 환경설정이 방금 끝났습니다. 루트 사용자로 다음 명령어가 서버를 중지 시킵니다.

 mysqladmin -p shutdown
 

 

chmod -R 755 /srv/mysql
 

실행 권한을 주고, 다시 실행을 중지 시켜봅니다.

killall mysqld
ps -ef | grep mysql
 

 

마리아DB 구동/중지

구동
/usr/local/mysql/support-files/mysql.server start
/usr/local/mysql/support-files/mysql.server restart
/usr/local/mysql/bin/mysqld --user=root
/usr/local/mysql/bin/mysqld --user=mysql

중지
/usr/local/mysql/support-files/mysql.server stop
killall mysqld
 

 

이상.

 


 

 

728x90