본문 바로가기
공부공부/2023 쌓여가는 나의 지식~

리눅스(Linux) 데이터 베이스(Mysql) 사용해보기

by Lee_story_.. 2023. 10. 26.
728x90

리눅스 환경에서 데이터 베이스를 사용해보기 위해 Mysql을 이용해 보았습니다!

 

 

 

 

Mysql이란?

MySQL은 세계에서 가장 많이 쓰이는 오픈 소스의 관계형 데이터베이스 관리 시스템으로 간단한 명령어/쿼리문들로 데이터들을 관리할 수 있습니다. 

 

 

 최근에는 관련 GUI들도 많이 생겨서 아래처럼 명령어 없이도 관리 가능해 보입니다.

 

하지만 이번엔 python코드상에서 데이터베이스를 사용해 보는것이 목표이기에 GUI말고, 간단한 명령어들로 테이블과 데이터들을 확인해 보겠습니다. 

 

 

 

 

먼저 리눅스 환경에 Mysql을 설치해줍시다. 

 

sudo apt update
sudo apt install mysql-server

 

설치과정은 간단!

 

 

다음은 Mysql을 실행해줍시다. 

sudo systemctl start mysql
 = sudo service mysql start

systemctl을 이용하거나 service를 이용해서 start해줄 수 있습니다. 

 

 

 

 

이제 실행 되고 있는지를 확인해 줍시다. 

sudo systemctl status mysql
= sudo service mysql status

 

아래처럼 running - 실행중 으로 확인 할 수 있습니다. 

 

 

 

 

 

stop을 통해 정지해주게 되면

sudo systemctl stop mysql
= sudo service mysql stop

 

이렇게 종료됩니다. (dead)

 

 

 

 

이제 mysql에 접속해줍시다. 

sudo mysql -u root -p

 

위 명령어를 입력후 자신의 리눅스 root 패스워드를 입력해줍시다.

 

 

그러면 아래처럼 mysql에 접속하게 되는데 

여기서 mysql명령문들을 실행할 수 있습니다. 

 

 

 

간단한 명령어로는 아래와 같습니다.

show databases; 
- 데이터 베이스 보기

show tables;
- 테이블 보기 

select * from idDatabase;
- 유저 테이블 데이터 보기

 

 

 

현재 데이터베이스들을 출력해봅시다. 

 

그리고 이번엔 아래 명령어로 새로운 데이터 베이스를 만들어 봅시다.

create database [생성할 데이터 베이스 이름];

 

생성!

 

 

새로운 데이터베이스에 접속해줍시다. 

use newMydatabase;

show tables;

그리고 테이블들을 출력해보면?

 

 

아직 아무것도 없습니다. 

 

 

저는 아래처럼 테이블을 하나 생성해 주었습니다. 

테이블은 저장하고자하는 데이터의 형식으로 생성해주시면됩니다. 

CREATE TABLE newTable (num INTEGER PRIMARY KEY AUTO_INCREMENT, name TEXT NOT NULL, memo TEXT);

= CREATE TABLE [새로운 테이블 이름] ([테이블 형식]);

 

생성!

 

 

이제 테이블에 데이터를 추가해 봅시다.

INSERT INTO newTable (name, memo) VALUES ('ljh','사용자1');
INSERT INTO newTable (name, memo) VALUES ('hsj','사용자2');
INSERT INTO newTable (name, memo) VALUES ('jus','사용자3');

(저의 형식대로 추가한것!)

 

 

 

이제 아래 명령어를 통해 조회해보면

select * from newTable;

 

 

 

Delete명령어를 통해 데이터 삭제도 가능합니다. 

DELETE FROM newTable WHERE name='jus';

 

 

끝!

 

다양한 명령어들이 있겠지만 당장은

insert, delete, show 만으로도 충분하기에 여기까지 정리해 보았습니다.

 

리눅스환경에서 생각보다 쉽게 사용 가능해서 자주 사용해볼 것 같습니다.

추가적인 내용은 추후 글로 돌아오겠습니다!

 

 

 

틀린점이 있다면 댓 달아주세요!

댓글