시스템 : 우분투 20.04
관리자 권한 su 입력후 진행한다.
이미지 다운
docker pull mysql
해당 코드 입력시 이미지가 다운됨
docker images
해당 코드 입력시 이미지를 조회함
컨테이너 생성
mkdir mysqldata
해당 코드 입력시 디렉터리 생성
docker run -d -p 3306:3306 --name mysql-container -e MYSQL_ROOT_PASSWORD=1234 -v ~/mysqldata/:/var/lib/mysql mysql --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
해당 코드 입력시 컨테이너를 생성함
docker ps
해당 코드 입력시 컨테이너 생성을 확인 할수 있다.
컨테이너 접속
docker exec -it mysql-container bash
해당 코드 입력시 컨테이너에 접속하게 됨
mysql -u root -p
해당 코드 입력시 root 계정으로 접속됨
루트 계정 비번 변경
alter user 'root'@'localhost' identified with mysql_native_password by '변경할 비밀번호';
해당 코드 입력시 비번을 변경가능하다.
신규 계정 생성 ( root계정으로 접속 되어 있어야 한다. )
create user '계정명'@'%' identified by '비밀번호';
해당 코드 입력시 계정이 생성 된다.
그래서 계정을 로그인 하기위해 루트 계정을 종료 해야한다.
exit
를 치고 종료후 로그인 해보자.
mysql -u 계정명 -p
신규 데이터 베이스 생성
루트 권한이 필요하므로 아래의 구문을 입력한다
mysql -u root -p
create database 원하는데이터베이스명 default character set utf8;
해당 코드 입력시 데이터 베이스 생성됨
show databases;
해당 코드 입력시 데이터 베이스 목록을 띄움 ( 확인 하기 )
외부 접속을 위한 신규 계정 권한 설정
grant all privileges on 데이터베이스명.* to 계정명@'%';
해당 코드 입력시 모든 원격지에서 접속 권한이 허용 된다. ( ' . ' 확인 잘하기 )
grant all privileges on 데이터베이스명.* to 계정명;
해당 코드 입력시 신규 데이터 베이스 모든 권한 부여
flush privileges;
해당 코드 입력시 변경된 권한을 적용하게 된다.
포트 확인
mysql에서 확인할려면
show global variables like 'PORT';
를 입력하면 포트 3306이 활성화 된다.
접속 가능 포트 보기
netstat 를 쓰기위해 해당 코드를 입력하여 설치한다.
apt-get update
sudo apt install wget -y
sudo apt install net-tools
그리고 이제 포트를 보기위해 아래의 구문을 입력하고
netstat -tulpn
되어 있으면 완료 되었다.
그리고 공유기 설정에서 3306 포트를 포트포워딩을 해주면 된다.
편하게 보기위해서 DBeaver( 디비버 ) 를 설치하였다.
다 입력을 하고 나면
Public Key Retrieval is not allowed 이 뜨게 되는데
해당페이지로 들어가서
allowPublicKeyRetrieval을
TRUE로 변경 해주면 된다.
우분투 서버 재부팅후 이미지 실행
docker start -ai mysql-container
해당 구문을 입력하면 만들어진 컨테이너를 실행 시킬수 있다.
'서버 > Docker' 카테고리의 다른 글
스프링부트 배포하기 (2) | 2023.05.21 |
---|---|
도커 설치 (1) | 2023.05.12 |
MySQL 유저 비밀번호 변경 (0) | 2023.05.04 |
도커 설치 (0) | 2023.05.04 |
도커를 배워 보자 (0) | 2023.05.04 |