mysql

Docker를 통해 Mysql 설치

2023. 11. 27. 18:03
728x90
Docker 를 통해 Mysql 설치

Mac에 Docker 깔기

brew 를 통해 Docker 깔기

brew install --cask docker

 

그후 아래 명령어를 통해 잘깔렸는지 확인해보기

docker -v

 

Docker에 Mysql 깔기

  1. docker의 이미지 저장소에서 MySQL의 Docker 이미지를 로컬 시스템으로 다운로드 하기

    docker pull mysql
    
    //버전을 지정하고 싶다면
    docker pull mysql:버전
    
  2. 다운받은 docker 이미지 확인하기

    docker images
    

    image-20230724223315757

  3. MySQL Docker 컨테이너 생성 및 실행하기

    docker run --name <컨테이너명> -e MYSQL_ROOT_PASSWORD=<password> -d -p 3306:3306 mysql:latest
    
  4. 생성된 컨테이너 리스트 확인하기

    docker ps -a
    

    <이때 우리가 받은 Image를 기반으로 생성된 Container가 보이면 된다>

 

DBeaver2 에 연결시 오류 해결

image-20230724223705485

이런식으로 연결을 했는데 계속해서 Public Key Retrieval is not allowed 오류가 발생했다.

이때 Driver properties 에 추가정보를 제시하면 되는데 Driver Properties에 들어가서

allowPublicKeyRetrieval = true 로 설정해주면 연결에 성공한다.

 

728x90

'DB' 카테고리의 다른 글

h2 DB 연결 방법  (1) 2023.11.27
트랜잭션(transaction)  (1) 2023.11.22
커넥션 풀 및 데이터 소스  (0) 2023.10.25
JDBC  (0) 2023.10.25
MySQL) 프로시저를 사용하여 더미 데이터 만들기  (0) 2023.05.04
728x90

더미 데이터 생성

프로시저 생성

  • 프로시저(Stored Procedure)란, 데이터베이스 내에서 쿼리문과 같은 역할을 하지만, 한번의 호출로 여러 쿼리를 실행하거나, 조건문 등을 이용하여 특정 작업을 처리하는 등의 여러 가지 기능을 수행할 수 있는 데이터베이스 객체다.

예를 들어 프로시저를 사용하여 100개의 게시글을 만들고 싶다면 아래와 같은 프로시저를 실행하면 된다.

DELIMITER $$
DROP PROCEDURE IF EXISTS loopInsert$$

CREATE PROCEDURE loopInsert()
BEGIN
    DECLARE i INT DEFAULT 1;
    WHILE i <= 100
        DO
            INSERT INTO ARTICLE(title, content, user_id)
            VALUES (concat('제목', i), concat('내용', i), 'tester');
            SET i = i + 1;
        END WHILE;
END$$
DELIMITER ;

그후

CALL loopInsert();

프로시저를 호출하여 실행해주면 된다.

만약 위 프로시저를 실행한후 100~300 까지의 게시글을 추가적으로 만들고싶다면 아래와 같은 프로시저를 사용하면 된다.

DELIMITER $$
DROP PROCEDURE IF EXISTS loopInsert$$

CREATE PROCEDURE loopInsert()
BEGIN
    DECLARE i INT DEFAULT 1;
    WHILE i <= 300
    DO
        IF i >= 100 THEN
            INSERT INTO ARTICLE(title, content, user_id)
            VALUES (concat('제목', i), concat('내용', i), 'tester');
        END IF;
        SET i = i + 1;
    END WHILE;
END$$
DELIMITER ;
728x90

'DB' 카테고리의 다른 글

커넥션 풀 및 데이터 소스  (0) 2023.10.25
JDBC  (0) 2023.10.25
MySQL) 서버의 MySQL intellij로 연동하기  (0) 2023.05.04
MySQL) ubuntu에 MySQL 설치  (0) 2023.05.04
MySQL) 사용자 추가  (0) 2023.05.04

+ Recent posts