본문 바로가기
SW/APM

우분투(Ubuntu) - MariaDB 컴파일 설치 (mysql)

by bigju 2021. 10. 6.

설치 환경 Ubuntu 18.04 

1. 필요 라이브러리 설치

apt-get update

apt-get install -y gcc g++ libncurses5-dev libxml2-dev openssl libssl-dev curl libcurl4-openssl-dev libjpeg-dev libpng-dev libfreetype6-dev libsasl2-dev autoconf libncurses5-dev 

apt-get install cmake -y

2. 사용자 계정 설정

useradd -g mysql -s / bin / bash -m mysql groupadd mysql

3. 설치

cd /usr/local/src

wget https://downloads.mariadb.org/interstitial/mariadb-10.4.6/source/mariadb-10.4.6.tar.gz/from/http%3A//ftp.kaist.ac.kr/mariadb/ 

tar xfz mariadb-10.4.6.tar.gz

 

4.  컴파일 ( 오래 걸린다.)

 

cd mariadb-10.4.6

cmake \ 
-DCMAKE_INSTALL_PREFIX=/usr/local/mariadb \
-DMYSQL_DATADIR=/usr/local/mariadb/data \
-DMYSQL_UNIX_ADDR=/usr/local/mariadb/mysql.sock \ 
-DSYSCONFDIR=/usr/local/mariadb \ 
-DMYSQL_TCP_PORT=3306 \ 
-DMYSQL_USER=mysql \ 
-DDEFAULT_CHARSET=utf8 \ 
-DDEFAULT_COLLATION=utf8_general_ci \ 
-DWITH_EXTRA_CHARSETS=all \ 
-DENABLED_LOCAL_INFILE=1 \ 
-DWITH_INNOBASE_STORAGE_ENGINE=1 \ 
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \ 
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

ake && make install //오래 걸림

 

5. 설정 수정

 

cd /usr/local/mysql 
./bin/mysql_install_db 
--user=mysql 
--datadir=/usr/local/mysql/data

* 내용 입력
vi /etc/my.cnf 

[mysqld]
# port=3306
init_connect=SET collation_connection = utf8_general_ci
init_connect=SET NAMES utf8 
character-set-server=utf8 
collation-server=utf8_general_ci 

# table_cache=1024 
max_connections=2048 
max_user_connections=500 
max_connect_errors=10000
wait_timeout=300 
query_cache_type = 1 
query_cache_size = 128M 
query_cache_limit = 5M 
slow_query_log
long_query_time=3 
max_allowed_packet=16M 
sort_buffer_size = 2M 

# skip-innodb 
skip-name-resolve 

[mysql] 
default-character-set=utf8 

[client]
default-character-set=utf8


* 관리를 위해 복사

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld 

vi /etc/init.d/mysqld 찾아서 수정 

basedir=/usr/local/mysql
datadir=/usr/local/mysql/data update-rc.d mysqld defaults

service mysqld start 
service mysqld status (확인창에서 나오려면 q를 누르면됨)
service mysqld stop

6.실행

 

 

./bin/mysql -u root -p ( cd /usr/local/mysql 에서 실행할것_)

​

​

!!! 그래도 접속이 불가하다면 패스워드 초기화 진행

​

세션 2개가 필요 하며 세션 1 진행 후 세션 2 에서 진행

​

​

1. 세션 1

cd /usr/local/mysql ./bin/mysqld_safe --skip-grant-tables &

세션 2

./bin/mysql -u root -p use mysql; update user set authentication_string = password('원하는 비밀번호') where user = 'root'; flush privileges;

​

댓글

메인으로가기


    

Big Ju

IT Engineer


항상 답을 위해 노력하는

엔지니어입니다.

 

 

    


 UP!