본문 바로가기
Cloud/Azure

[2021.07.19] 인턴 +140 How to connect Mysql on Azure? (+Workbench connect, ADD data DB)

by injekim97 2021. 7. 19.
반응형

[2021.07.19] 인턴 +140   How to connect Mysql on Azure? (+Workbench connect,  ADD data DB)

 

 

 

해당 게시글은 클라우드(Azure)에서 가상머신을 만든 후, 그 가상머신에 MySQL을 설치 하여,

로컬 PC에 설치한 Workbench로 접속하는 방법에 대해 알려주기 위해서 작성하였다.

 

 

 

 

 

# AWS DB 연동(AWS)
def get_db():
    db = pymysql.connect(
        host='ec2-13-125-144-25.ap-northeast-2.compute.amazonaws.com',
        port=3306,
        user='admin',
        passwd='1/zw;GytAwx*',
        db='KABL',
        charset='utf8'
    )
    return db



# AWS DB 연동 (Azure)
def get_db():
    db = pymysql.connect(
        host='52.141.5.164',
        port=3306,
        user='admin',
        passwd='1/zw;GytAwx*',
        db='KABL',
        charset='utf8'
    )
    return db

 

 

 

 

 

<AWS EC2 Workbench 접속하는 방법>

-> 기존에는 AWS EC2를 주로 사용했었다. (Host에는 AWS EC2에 들어가면 나오는 퍼블릭 IPv4 DNS 값을 넣어줄 것)

 

 

 

 

 

---------------------------------------------------------------------------------------------------------------------------

이제, AWS가 아닌, 이번에는 Azure에 Workbench 접속하는 방법에 대해서 알아보자.

 

 

<Azure VM Workbench 접속하는 방법>

-> Hostname에 공용 ip주소인 것을 적어주면 된다.

 

 

 

 

 

 

 

mysql> CREATE USER 'admin'@'%'identified by 'password';
Query OK, 0 rows affected (0.02 sec)



mysql> grant all privileges on *.* to 'admin'@'%';
Query OK, 0 rows affected (0.04 sec)



mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)


mysql> select host,user from user;
+-----------+------------------+
| host      | user             |
+-----------+------------------+
| %         | admin            |
| localhost | mysql.infoschema |
| localhost | mysql.session    |
| localhost | mysql.sys        |
| localhost | root             |
+-----------+------------------+
5 rows in set (0.00 sec)

 

 

-> mysql root로 접속한 것으로 계정을 만든 아이디로 접속해주면 된다.

 

* 무조건 root는 server에서만 접속이 되며, 외부로 접속을 하고 싶다면, 아이디를 꼭 만들어줘서 접속해야 한다.

(잊지말자 자주 까먹네)

 

 

 

 

 

 

 

 

 

---------------------------------------------------------------------------------------------------------------------------------

<pymysql를 통해, db에 데이터를 넣는 방법>

import pymysql

def get_db():
    db = pymysql.connect(
        host='52.141.5.164',
        port=3306,
        user='admin',
        passwd='?????',
        db='KLAC',
        charset='utf8'
    )
    return db

-> 해당 host는 AWS 클라우드상에서 사용한다면, EC2 IPv4 DNS 주소를, Azure에서 사용한다면, 공용 ip주소를 입력

 

 

mysql> CREATE TABLE Inquiry(
    -> Orgindex Varchar(5),
    -> Num Varchar(100) PRIMARY KEY,
    -> Title Varchar(500),
    -> content Varchar(8000),
    -> regDate Varchar(200),
    -> Link Varchar(400));
Query OK, 0 rows affected (0.06 sec)

 

 

mysql> CREATE TABLE Answer(
    -> Num Varchar(100) PRIMARY KEY,
    -> content Varchar(8000),
    -> regDate Varchar(200),
    -> Link Varchar(400));
Query OK, 0 rows affected (0.33 sec)

 

 

 

* 크롤링 데이터를 넣으려면, 데이터베이스를 선언해주고 , 해당 테이블 이름과 컬럼(속성)값을 미리 부여해줘야 데이터를 넣어줄 수 있음.

 

 

 

 

<AWS 가 아닌, Azure에서 만든 VM MySQL 서버에 데이터가 제대로 넣어지는 모습>

 

 

 

 

반응형

댓글