반응형 MariaDB7 Docker - Mariadb 실행 요점 정리, 볼륨 구성등 실행할때 마다 웹 검색해서... 어떻게 하면 좋을까 싶어 정리해본다. 가장 기본적으로 Mariadb를 실행하기 위해서는 Password 설정을 해주어야 한다. 아래 입력이 가장 짧게 진행하는 것이다. 여기에 -p 옵션을 이용해서 포트를 호스트에서 연결할 수 있도록 하면 기본적인 환경 구성은 완료되었다고 할 수 있다. docker run --detach --name mariadb -p 3306:3306 --env MARIADB_ROOT_PASSWORD=password! mariadb:latest 실행할 때 필수로 사용해야 하는 옵션에 대해서 알아보도록 하자. --detach: docker run 명령은 기본적으로 백그라운드 실행을 하지 않아 터미널에 실행상황을 출력하게 된다. 따라서 백그라운드 실행을 하고.. 2024. 2. 23. MariaDB/MySQL - Database 파일 위치 변경하기 MariaDB/MySQL를 관리할 때 가장 기본적인 부분이 바로 Database는 사이즈이다. Database는 말 그대로 데이터를 저장하는 저장소이기 때문에 많은 양의 데이터를 저장하다 보면 디스크공간이 가득차게된다. 따라서 별도의 넉넉한 저장 공간을 만들어 데이터베이스를 위치하는게 좋은데, 기본적으로 데이터베이스 경로는 아래에 위치해 있다. /var/lib/mysql/ 여기에서는 데이터베이스 경로를 변경하는 방법에 대해서 알아보고자 한다. 1. 현재 데이터베이스 위치 확인하기 데이터베이스 위치를 확인하기 위해서는 먼저 mysql을 이용해서 로그인을 해야한다. $ sudo mysql -u root -p 이후 환경 변수인 @@datadir 를 이용하면 현재 위치 정보를 확인할 수 있다. MariaDB [.. 2022. 12. 14. MariaDB - MySQL Strict Mode is not set for database connection 'default' 작은 부분이지만, 추후 오류를 발생시킬 수 있는 부분으로, MariaDB의 경우 호환성 모드로 동작을 하는데 특정 조건에 맞지 않는 경우 자동으로 판단하여 데이터를 입력하게 된다. (예, unsigned 컬럼에 -1 이 입력되면 자동으로 0 으로 변환) 이러한 이유가 발생하는 이유는 STRICT_ALL_TABLES, STRICT_TRANS_TABLES 가 꺼져있어서 발생하며, STRICT_ALL_TABLES, STRICT_TRANS_TABLES이 비활성화 되어 있으면 CHAR, VARCHAR 의 크기를 초과하는 데이터 입력시 에러를 발생하지 않고 가능한 크기 만큼 잘라서 넣게 된다. 이는 운영상 위험이 있을 수 있기 때문에 아래와 같이 STRICT_ALL_TABLES, STRICT_TRANS_TABLES.. 2022. 9. 1. Mariadb - 3306 port listen change 127.0.0.1 to 0.0.0.0 Mariadb의 기본적으로 설치가 되고, 사용하고자 사용자와 권한을 추가하고 나서 원격 서버에서 접근을 시도하면 접근이 되지 않는다. netstat로 살펴보면, 이유는 기본 포트 연결이 로컬(즉 127.0.0.1)로만 가능하고 원격 접근이 되지 않도록 되어 있기 때문이다. netstat -lnp | grep 3306 이를 해결하기 위해 인터넷을 찾아보았는데 보다 추후를 위해 정리해 본다. 이는 MariaDB의 환경설정 파일의 bind-address 부분을 수정해 주면된다. 인터넷에 보면, 여러가지 etc/mysql/my.cf를 수정해라, /etc/mysql/conf.d/mysql.cnf를 수정하라는 얘기도 있고 하지만, 결과적으로 아래와 같이 환경 설정 정보가 저장되어 있는 기존 파일을 찾아야 한다. 찾.. 2021. 10. 29. MySQL/MariaDB - root 계정 초기화/비밀번호 재설정 오늘은 MiaraDB 작업중에 발생한 root 비밀번호 분실에 따른 재설정을 진행하였다. 이유는 정확히 모르지만, sudo mysql_secure_installation 작업 도중 root 비밀번호 변경에서 강제 중지를 하였더니 root 계정이 사라져 버렸다. 이를 해결 하기 위해서 인터넷의 정보를 확인했고 여기에 정리하는 차원으로 남긴다. 방법은 MariaDB와 MySQL 모두 동일한 방식으로 사용이 가능하다. 아마 root 계정의 비밀번호를 분실했거나, 계정을 삭제한 상황이라면, 아래 방법이 유용하다. 처음에 찾은 글은 재설정하는 방법이였는데, 결과적으로 재설정이나 새로 root 계정을 생성하는 과정을 비슷하다고 할 수 있다. 1. MySQL/MariaDB Safe Mode 시작 처음 진행할 부분은 .. 2021. 1. 25. MariaDB/Mysql - Install and Remote connection by New User youtu.be/5mBVFSh83Ak 오늘 간단히 MariaDB를 Ubuntu에 설치하고, 원격으로 접근하는 방법을 정리해 보았다. 1. Install MariaDB 가장 먼저 진행할 부분은 MariaDB를 설치하는 것이다. 설치 방법은 apt 명령을 이용하면 서비스 등록까지 간편하게 등록되어 설치를 마무리 할 수 있다. $sudo apt update $sudo apt install mariadb-server 이후 진행해야 하는 부분은 기본 보안 설정이다. MariaDB가 설치된 상황에서는 root 패스워드가 없다. root 패스워드를 설정하고, 기본적으로 권고하는 보안 설정등을 진행하는데 도움을 주는 mysql_secure_installation 를 실행하자. 2. Start default mariad.. 2020. 11. 6. MariaDB - Specified key was too long Specified key was too long; max key length is 767 bytes 이는 InnoDB 엔진에 관련된 내용이다. MariaDB, MySQL은 하나의 Row이 가질 수 있는 최대 Index 길이의 제한이 있고 이 제한이 767 Bytes 까지이다. 이 제한을 풀기 위해서는 set global innodb_large_prefix = ON; 이후 생성하고자 하는 테이블 옵션에 ROW_FORMAT=DYNAMIC 옵션을 추가하여 해결이 가능하다. set global innodb_large_prefix = ON; 위 옵션이 정상적으로 실행되었다면 테이블을 만들때 엔진 옵션으로 DYNAMIC을 추가하면 정상적으로 테이블 생성이 가능하다. ENGINE=INNODB ROW_FORMAT=DY.. 2020. 11. 6. 이전 1 다음 반응형