Extra Form
PHP PHP 7.3
CMS XpressEngine

CentOS 7 에서 마리아 디비 설치과정에서 너무 답답하여 이렇게 질문 드립니다

뭐가 문제인지 너무 궁금해서요 ㅠㅠ 미치겠습니다.

제는 아래와 같이 했습니다

 

CentOS 7 설치 후
마지막으로 yum -y install wget cmake ncurses-devel libtool-ltdl-devel expat-devel db4-devel pcre-devel openssl-devel libdb-devel 이와 같이 해주고

DB 관리자 및 그룹 생성을 아래와 같이 했습니다.

groupadd aaa
useradd -M -c "MySQL" -d /var/mysql -g aaa -s /bin/nologin mysql

그리고 마리아 디비 /usr/src 여기서 mariadb-10.4.10.tar.gz 이거 받아서 풀어주고 
다음 cd mariadb-10.4.10 여기로 가서 cmake 를 아래와 같이 했습니다.

 

cmake \
-DCMAKE_INSTALL_PREFIX=/apm/server/mariadb \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/apm/apps/data \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/apm/server/mariadb/mysql.sock \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_ARIA_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_FEDERATEDX_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_XTRADB_STORAGE_ENGINE=1 \
-DWITH_ZLIB=system

다음 make; make install  해줬습니다.

 

그 다음 

데이터베이스가 저장되는 폴더 생성을 아래와 같이 했구요

“/apm/apps/data” 에 데이터베이스 파일들을 저장하기 위해서 “data” 폴더의 부모 폴더인 “/apm/apps” 폴더를 생성을 하고
기본 데이터베이스 저장 폴더인 “/apm/server/mariadb/data” 에 저장하는 경우는 부모 폴더가 존재하기 때문에 폴더를 생성하지 않아도 되기에 생성하지 않았습니다.

그래서 mkdir /apm/apps 이렇게 하였습니다.

다시 다음 cd /apm/server/mariadb 이렇게 가서

mkdir /apm/server/conf 이거와 mv /etc/my.cnf /apm/server/conf/my.cnf 이거 mv /etc/my.cnf.d /apm/server/conf/my.cnf.d 이거 vi /apm/server/conf/my.cnf 이렇게 했습니다

그리고 vi 로 my.cnf 을 열어서

 
[client]
port            = 3306
socket          = /apm/server/mariadb/mysql.sock
 
[mysqld]
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
#sql_mode=NO_ENGINE_SUBSTITUTION
datadir=/apm/apps/data
port            = 3306
socket          = /apm/server/mariadb/mysql.sock
back_log = 50
max_connections = 2000
max_connect_errors = 10
table_open_cache = 4096
max_allowed_packet = 32M
binlog_cache_size = 2M
max_heap_table_size = 1024M
read_buffer_size = 4M
read_rnd_buffer_size = 32M
sort_buffer_size = 16M
join_buffer_size = 16M
thread_cache_size = 8
thread_concurrency = 8
query_cache_type = 0
query_cache_size = 1G
query_cache_limit = 1G
ft_min_word_len = 4
thread_stack = 480K
transaction_isolation = REPEATABLE-READ
tmp_table_size = 1024M
log-bin=mysql-bin
binlog_format=mixed
slow_query_log
long_query_time = 2
server-id = 1
key_buffer_size = 64M
bulk_insert_buffer_size = 128M
myisam_sort_buffer_size = 256M
myisam_max_sort_file_size = 20G
myisam_repair_threads = 1
myisam_recover
#innodb_additional_mem_pool_size = 32M
innodb_buffer_pool_size = 8G
innodb_buffer_pool_instances = 4
innodb_data_file_path = ibdata1:10M:autoextend
innodb_write_io_threads = 8
innodb_read_io_threads = 8
innodb_thread_concurrency = 16
innodb_flush_log_at_trx_commit = 2
innodb_log_buffer_size = 1G
innodb_log_file_size = 128M
innodb_log_files_in_group = 3
innodb_max_dirty_pages_pct = 90
innodb_lock_wait_timeout = 120
innodb_file_format = barracuda
innodb_doublewrite = 1
sync_binlog = 0
 
[mysqldump]
quick
max_allowed_packet = 32M
 
[mysql]
no-auto-rehash
 
[myisamchk]
key_buffer_size = 1024M
sort_buffer_size = 1024M
read_buffer = 16M
write_buffer = 16M
 
[mysqlhotcopy]
interactive-timeout
 
[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid
# include all files from the config directory
!includedir /apm/server/conf/my.cnf.d
open-files-limit = 8192

 

 

이렇게 수정했습니다

다음은 파일 소유자, 소유 그룹 변경을 아래와 같이 했습니다
mkdir /var/log/mariadb
mkdir /var/run/mariadb
chown mysql:aaa /var/log/mariadb
chown mysql:aaa /var/run/mariadb

 

그리고 기본 데이터베이스 생성 및 폴더 권한 변경을 아래와 같이 했는되요 여기서 문제 입니다

./scripts/mysql_install_db --user=mysql --datadir=/apm/apps/data  --defaults-file=/apm/server/conf/my.cnf

이렇게 하기만 하면 결과는 이렇게 나옵니다.

 


error: Found option without preceding group in config file: /apm/server/conf/my.cnf at line: 1
Fatal error in defaults handling. Program aborted
chown: cannot access `./lib/plugin/auth_pam_tool_dir': 그런 파일이나 디렉터리가 없습니다
Cannot change ownership of the './lib/plugin/auth_pam_tool_dir' directory
 to the 'mysql' user. Check that you have the necessary permissions and try again.


이렇게 나옵니다 여기서 계속 저렇게 문제가 일어나서 마리아 디비 설치를 완료 하지 못하고 있습니다
혹시 제가 잘못한 부분이 있으면 알려주시면 고맙겠습니다.


분명히 뭔가 제가 잘못했기에 저렇게 나오는것 같은데요 

알수가 없네요 현재 10번 정도 CentOS 7 설치한것 같아요 원인을 검색하고 찾아보고 알아봐도 
뭐가 문제인지 알수가 없어서 이렇게 질문 드립니다.

 

아 그리고 이 질문은 제가 잘아는 분에게 마리아 디비를 설치하는 것을 배워서 하는것이라서요 
그분이 개인적으로 자신의 글이 넷상에 나오는것을 원치 않기에 답을 구하면 삭제를 하겠습니다

그리고 원인에 답을 따로 제가 운영중인 사이트에 게시하도록 하겠습니다.
원인이 뭔지 좀 알려주시면 고맙겠습니다

 

혹시  chown: cannot access `./lib/plugin/auth_pam_tool_dir': 그런 파일이나 디렉터리가 없습니다

 

이게 소유자 권한 문제 일까요

아니면 ./lib/plugin/auth_pam_tool_dir' 이게 없는 것일까요

  • ?
    제가 알기로 마리아디비는 포트 3307을 사용하고요
    안되면 localhost를 127.0.0.1 이걸로 바꿔보세요
  • ? profile

    3306이 기본입니다. 3307은 나스 등에서 커스터마이징하여 쓰는 거고요.

  • profile
    그냥 마리아디비 yum 설치하시는건 어떠신가요?
  • profile ?
    그게 쉽기는 하지만 이전에 계속 위와 같이 사용을 해오다 보니 모든 사이트가 저와 비슷하게 설정 하여 운영중 입니다
    그렇다 보니 이제 와서 변경하기 그렇더군요
    이전 개발자가 다 해주고 있었는데요
    혼자서 다시 해볼려고 하니 어렵네요 이전에는 다 하기는 했는데
    이번에 CentOS 7 마지막 버전에서 조금 달라진것 같아서요
    이전과 같이 하니 계속 저렇게 문제가 일어나네요
  • ? profile

    음.. 사이트에서 참고하는 마리아디비 참고값이 뭐가 있을지 모르겠네요.
    제가 보기에는 단지 저장 경로만 따로 주시는 거 같은데, 이건 yum 설치후 별도로 수정할 수 있다고 알고 있습니다.

     

    지금 오류가 나오는 문제도 경로문제이구요.

    해당 경로에 가셔서 폴더 만드시고 권한 주시면 해결 될 거 같기는 합니다.

  • profile
    그냥 yum 하시는게....
  • profile
    mkdir -p ./lib/plugin/auth_pam_tool_dir

    하고 해보세요
  • profile ?
    고맙습니다 ㅎㅎ
    한번 해보겠습니다