streetprogrammer

마리아DB 바이너리 설치 본문

DATABASE

마리아DB 바이너리 설치

차완호미 2022. 12. 19. 11:54

[0] 기본 설치

Installing MariaDB/MySQL system tables in '/usr/local/mariadb/data' ...
/usr/local/mariadb/bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
발생 시
~$ sudo apt-get install libaio1 libaio-dev

 

[1] DB 백업

서버 작업전에 기존 사용하던 DB를 백업함  https://blog.naver.com/ncloud24/221550416774

방법 1 : /usr/local/mysql8/data 를 tar파일로 백업

방법 2: /usr/local/mysql8/bin/mysql -u root -p testdb02 < /data/lanes_of_load_dump.sql 덤프진행  

[2] 바이너리 파일 설치

https://mariadb.org/download/?t=mariadb&o=true&p=mariadb&r=10.4.13&os=Linux&cpu=x86_64&i=systemd 

 

Download MariaDB Server - MariaDB.org

REST API Release Schedule Reporting Bugs … Continue reading "Download MariaDB Server"

mariadb.org

fileZilla를 통해 옮겨서 설치함

tar -xvf mariadb-10.4.13-linux-x86_64.tar.gz

[3] MYSQL user 생성

$ groupadd mysql
$ useradd -r -g mysql -s /bin/false mysql

[4] 파일 소유자 변경

chown -R mysql .
chgrp -R mysql .

[5] /usr/local/mariadb/etc/my.cnf 생성

[client]
port = 3308
socket=/usr/local/mariadb/tmp/mysql.sock

[mysqld]
default_time_zone = '+09:00'
port=3308
basedir=/usr/local/mariadb
socket=/usr/local/mariadb/tmp/mysql.sock
datadir=/usr/local/mariadb/data
user=mysql
character-set-server=utf8mb4
collation-server=utf8mb4_bin
lower_case_table_names=1

[mysqld_safe]
log-error=/usr/local/mariadb/log/mysql_log.err
pid-file=/usr/local/mariadb/mysql.pid

[6] install db  *my.cnf, basedir, datadir 위치 잡아줌

./scripts/mysql_install_db --defaults-file=/usr/local/mariadb/etc/my.cnf \
--basedir=/usr/local/mariadb \
--datadir=/usr/local/mariadb/data

[7] 권한 수정
install 혹은 필요한 폴더를 만든 경우 해당 파일의 권한을 모두 mysql로 설정 해줘야함

chmod 755 -R /usr/local/mariadb
chown  -R mysql:mysql  /usr/local/mariadb

 

[8] mysld_safe 실행  *my.cnf 위치 잡아줌

$ /usr/local/mariadb/bin/mysqld_safe --defaults-file=/usr/local/mariadb/etc/my.cnf --user=mysql &

[9] mariaDB 실행 * 소켓 위치 잡아줌, 실행후 비밀번호는 리눅스 비밀번호로 했음

/usr/local/mariadb$ bin/mysql -u root -p -S /usr/local/mariadb/tmp/mysql.sock

Error  Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' : 해당 소켓을 찾을수 없음 -> my.cnf 파일 에서 해당 소켓의 위치를 잡아둠 -> 오류가 계속됨 -> 실행시 옵션을 통해 소켓 위치를 잡아둠 (/usr/local/mariadb# bin/mysql -u root -p -S /usr/local/mariadb/tmp/mysql.sock)

 

[10] root계정 비밀번호 수정 

ALTER USER 'root'@'lopcalhost' IDENTIFIED BY '*******';

[11] 권한 부여 

Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 8
Server version: 10.4.13-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> create database lanes_of_load;
Query OK, 1 row affected (0.000 sec)

MariaDB [(none)]> use lanes_of_load
Database changed
MariaDB [lanes_of_load]> ALTER USER 'root'@'lopcalhost' IDENTIFIED BY '*******';
ERROR 1396 (HY000): Operation ALTER USER failed for 'root'@'lopcalhost'
MariaDB [lanes_of_load]> ALTER USER 'root'@'localhost' IDENTIFIED BY '*******';
Query OK, 0 rows affected (0.034 sec)

MariaDB [lanes_of_load]> create user 'iwaz'@'%' identified by '*******';
Query OK, 0 rows affected (0.001 sec)

MariaDB [lanes_of_load]> create user 'root'@'%' identified by '*******';
Query OK, 0 rows affected (0.001 sec)

MariaDB [lanes_of_load]> grant all privileges on *.* to 'iwaz'@'%';
Query OK, 0 rows affected (0.020 sec)

MariaDB [lanes_of_load]> grant all privileges on *.* to 'root'@'%';
Query OK, 0 rows affected (0.001 sec)

MariaDB [lanes_of_load]> flush privileges;
Query OK, 0 rows affected (0.001 sec)

MariaDB [lanes_of_load]> select host, user from user;
ERROR 1146 (42S02): Table 'lanes_of_load.user' doesn't exist
MariaDB [lanes_of_load]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| lanes_of_load      |
| mysql              |
| performance_schema |
| test               |
+--------------------+
5 rows in set (0.001 sec)

[12] 재시작  

1. sudo를 이용한 데몬 실행 

2. DB서버 접속 ( 이떄 비밀번호는 서버에 대한 비밀번호)

 

*** 데몬 실행을 했는데 안되면 삭제 후 다시 진행

Comments