DB 종류, 설치 방법, 접근 방법까지 한 번에 이해하기
바이브 코딩으로 실제 업무 프로그램을 만들다 보면 반드시 만나게 되는 것이 있습니다.
바로 DB입니다.
화면은 예쁘게 만들 수 있습니다.
버튼도 만들 수 있습니다.
엑셀 업로드도 만들 수 있습니다.
하지만 입력한 데이터를 저장하지 못하면 프로그램은 실무에서 사용할 수 없습니다.
MES, ERP, 재고관리, 생산관리, 품질관리, 설비관리, 고객관리, 앱 서비스 등 대부분의 프로그램은 DB를 중심으로 움직입니다.
이번 글에서는 비개발자가 꼭 알아야 할 DB 개념, DB 종류, 설치 방법, DB별 접근 방법을 정리하겠습니다.
1. DB란 무엇인가?
DB는 Database의 약자입니다.
데이터를 체계적으로 저장하고 관리하는 공간입니다.
엑셀 파일도 데이터를 저장할 수 있습니다.
하지만 엑셀은 여러 사람이 동시에 사용하거나, 복잡한 조회를 하거나, 데이터 정합성을 유지하는 데 한계가 있습니다.
DB는 이런 문제를 해결하기 위해 사용합니다.
예를 들어 MES에서는 다음 데이터를 DB에 저장합니다.
품목 정보, 거래처 정보, BOM, 공정, 설비, 작업지시, 생산실적, 불량 이력, 입고, 출고, 재고, 사용자 권한, 로그 정보 등이 모두 DB에 저장됩니다.
즉 DB는 업무 시스템의 심장입니다.
2. 테이블이란 무엇인가?
DB 안에는 테이블이 있습니다.
테이블은 엑셀의 시트와 비슷하다고 생각하면 됩니다.
예를 들어 품목 테이블은 다음과 같은 구조를 가질 수 있습니다.
품목코드, 품명, 규격, 단위, 사용여부, 등록일자
거래처 테이블은 다음과 같은 구조를 가질 수 있습니다.
거래처코드, 거래처명, 사업자번호, 대표자, 전화번호, 주소, 사용여부
작업지시 테이블은 다음과 같은 구조를 가질 수 있습니다.
작업지시번호, 품목코드, 지시수량, 지시일자, 납기일자, 작업상태
테이블은 데이터를 일정한 규칙으로 저장하기 위한 틀입니다.
3. 컬럼과 행
테이블을 이해하려면 컬럼과 행을 알아야 합니다.
컬럼은 항목입니다.
예를 들어 품목코드, 품명, 규격, 단위가 컬럼입니다.
행은 실제 데이터 한 건입니다.
예를 들어 “A001, 모터브라켓, 100x200, EA”가 한 행입니다.
엑셀로 비유하면 컬럼은 세로 제목이고, 행은 한 줄의 데이터입니다.
4. 기본키란 무엇인가?
기본키는 한 건의 데이터를 구분하는 고유한 값입니다.
예를 들어 품목 테이블에서는 품목코드가 기본키가 될 수 있습니다.
거래처 테이블에서는 거래처코드가 기본키가 될 수 있습니다.
작업지시 테이블에서는 작업지시번호가 기본키가 될 수 있습니다.
기본키가 중요한 이유는 중복을 막고, 정확한 데이터를 찾기 위해서입니다.
예를 들어 품목코드 A001이 두 개 있으면 어떤 품목을 수정해야 할지 알 수 없습니다.
따라서 기본키는 DB 설계에서 매우 중요합니다.
5. SQL이란 무엇인가?
SQL은 DB에 명령을 내리는 언어입니다.
대표적인 명령은 네 가지입니다.
SELECT는 조회입니다.
INSERT는 추가입니다.
UPDATE는 수정입니다.
DELETE는 삭제입니다.
이 네 가지를 CRUD라고 부릅니다.
Create, Read, Update, Delete의 약자입니다.
예를 들어 품목을 조회할 때는 SELECT를 사용합니다.
SELECT * FROM item;
품목을 추가할 때는 INSERT를 사용합니다.
INSERT INTO item(item_code, item_name) VALUES('A001', '모터브라켓');
품목명을 수정할 때는 UPDATE를 사용합니다.
UPDATE item SET item_name = '모터 브라켓' WHERE item_code = 'A001';
품목을 삭제할 때는 DELETE를 사용합니다.
DELETE FROM item WHERE item_code = 'A001';
비개발자가 모든 SQL을 외울 필요는 없습니다.
하지만 SELECT, INSERT, UPDATE, DELETE의 개념은 반드시 알아야 합니다.
6. DB 종류는 어떻게 나뉘는가?
DB는 크게 관계형 DB와 비관계형 DB로 나눌 수 있습니다.
관계형 DB는 테이블 구조로 데이터를 저장합니다.
MariaDB, MySQL, PostgreSQL, SQL Server, Oracle, SQLite가 대표적입니다.
비관계형 DB는 문서, 키-값, 그래프 등 다양한 방식으로 데이터를 저장합니다.
MongoDB, Redis 같은 DB가 대표적입니다.
업무 시스템, MES, ERP, 재고관리, 생산관리에서는 대부분 관계형 DB를 사용합니다.
왜냐하면 거래, 수불, 실적, 재고처럼 정합성이 중요한 데이터는 테이블 기반 구조가 관리하기 좋기 때문입니다.
7. SQLite
SQLite는 작은 파일 하나로 동작하는 가벼운 DB입니다.
서버 설치가 필요 없고, 프로그램 내부에 포함해서 사용할 수 있습니다.
모바일 앱, 간단한 데스크톱 프로그램, 테스트용 프로그램에 적합합니다.
SQLite 공식 사이트는 SQLite를 작고 빠르며 자체 포함형인 SQL DB 엔진으로 설명하고, 대부분의 휴대폰과 많은 컴퓨터에 포함되어 사용된다고 설명합니다.
설치 방법도 비교적 간단합니다.
SQLite 다운로드 페이지에서 운영체제에 맞는 도구를 받을 수 있습니다.
SQLite는 이런 경우에 좋습니다.
개인용 프로그램, 모바일 앱 내부 저장소, 테스트용 DB, 설치가 간단해야 하는 프로그램에 적합합니다.
하지만 여러 사용자가 동시에 접속하는 MES나 ERP의 중심 DB로는 MariaDB, PostgreSQL, SQL Server 같은 서버형 DB가 더 적합합니다.
8. MariaDB
MariaDB는 MySQL 계열의 오픈소스 관계형 DB입니다.
무료로 사용할 수 있고, 웹 시스템과 업무 시스템에서 많이 사용됩니다.
중소 제조업용 MES Lite, ERP 보완 시스템, 재고관리 시스템을 만들 때 현실적인 선택입니다.
MariaDB 공식 다운로드 페이지에서는 운영체제, 아키텍처, 패키지 유형을 선택해 서버를 다운로드할 수 있습니다.
Windows에서는 MSI 패키지를 이용해 설치할 수 있으며, MariaDB 공식 문서는 Windows용 MSI 설치 절차를 제공합니다.
MariaDB 설치 흐름은 다음과 같습니다.
첫째, MariaDB Server 설치 파일을 다운로드합니다.
둘째, MSI 설치 파일을 실행합니다.
셋째, root 비밀번호를 설정합니다.
넷째, 포트 번호를 확인합니다. 기본 포트는 보통 3306입니다.
다섯째, 서비스로 실행되도록 설정합니다.
여섯째, HeidiSQL, DBeaver 같은 도구로 접속 테스트를 합니다.
MariaDB 접속에 필요한 정보는 다음과 같습니다.
서버 주소, 포트, DB명, 사용자 ID, 비밀번호입니다.
예를 들어 같은 PC에 설치했다면 서버 주소는 localhost 또는 127.0.0.1을 사용할 수 있습니다.
9. MySQL
MySQL은 전 세계적으로 많이 사용되는 관계형 DB입니다.
MariaDB와 문법과 구조가 비슷한 부분이 많습니다.
MySQL 공식 문서에서는 Windows에서 MySQL Installer를 이용해 MySQL Server를 설치하고 구성하는 방법을 안내합니다. 다만 MySQL 8.0이 MySQL Installer를 사용하는 마지막 시리즈이고, MySQL 8.1 이상은 각 제품의 MSI 또는 Zip 아카이브와 MySQL Configurator를 사용하는 흐름으로 바뀌었다고 안내합니다.
MySQL은 웹 서비스, 쇼핑몰, 게시판, 업무 시스템 등에 많이 사용됩니다.
MariaDB와 MySQL 중 무엇을 선택할지는 회사의 운영 정책, 기존 시스템, 호스팅 환경, 라이선스 정책, 관리 경험에 따라 결정하면 됩니다.
10. PostgreSQL
PostgreSQL은 강력한 오픈소스 관계형 DB입니다.
복잡한 데이터 처리, 안정성, 확장성, 표준 SQL 지원이 뛰어난 DB로 평가받습니다.
PostgreSQL 공식 다운로드 페이지에서는 다양한 플랫폼용 패키지와 설치 파일을 제공합니다.
Windows용 설치 파일도 제공되며, PostgreSQL 공식 사이트는 Windows Installer를 빠르게 시작할 수 있는 설치 방식으로 안내합니다.
PostgreSQL은 다음 경우에 좋습니다.
복잡한 쿼리가 많은 시스템, 데이터 정합성이 중요한 시스템, 확장성이 필요한 서비스, 위치 정보나 JSON 데이터 처리까지 고려하는 시스템에 적합합니다.
11. SQL Server
SQL Server는 Microsoft의 대표 관계형 DB입니다.
C#, .NET, Windows Server, 기업용 업무 시스템과 궁합이 좋습니다.
특히 Windows 기반 기업 환경에서는 SQL Server를 많이 사용합니다.
Microsoft는 SQL Server 다운로드 페이지에서 평가판, 에디션, 도구, 커넥터 등을 선택할 수 있게 제공하고 있습니다.
SQL Server Express는 무료로 사용할 수 있는 경량 버전입니다. Microsoft의 SQL Server 2022 Express 다운로드 페이지에서는 설치 관리자를 실행해 설치 또는 미디어 다운로드를 선택할 수 있다고 안내합니다.
C# WinForms 업무 프로그램과 SQL Server 조합은 여전히 많이 사용됩니다.
다만 무료 버전인 Express는 용량과 기능 제한이 있으므로 실제 운영 규모에 맞는 버전을 검토해야 합니다.
12. DB별 설치 난이도
처음 배우는 비개발자 기준으로 보면 설치 난이도는 대략 다음과 같습니다.
SQLite는 가장 쉽습니다.
파일 기반이라 서버 설치 부담이 적습니다.
MariaDB는 비교적 쉽습니다.
Windows MSI 설치가 가능하고, HeidiSQL이나 DBeaver로 접속하기 쉽습니다.
MySQL도 많이 사용되지만 버전별 설치 방식 차이를 확인해야 합니다.
PostgreSQL은 강력하지만 초보자에게는 설정 항목이 조금 더 어렵게 느껴질 수 있습니다.
SQL Server는 Windows 환경에서는 편리하지만 인스턴스, 인증 방식, 포트, 방화벽 설정을 이해해야 합니다.
13. DB 접근 방법이란?
DB 접근 방법은 프로그램이 DB에 연결해서 데이터를 읽고 쓰는 방식입니다.
사람은 DB 관리 도구로 접속합니다.
프로그램은 드라이버나 라이브러리를 이용해 접속합니다.
예를 들어 C# 프로그램이 MariaDB에 접속하려면 MariaDB 또는 MySQL용 .NET Connector가 필요합니다.
Python 프로그램이 MariaDB에 접속하려면 pymysql, mysql-connector-python, mariadb 같은 라이브러리를 사용할 수 있습니다.
SQL Server는 C#에서 System.Data.SqlClient 또는 Microsoft.Data.SqlClient 계열을 사용할 수 있습니다.
PostgreSQL은 C#에서 Npgsql, Python에서 psycopg 계열을 많이 사용합니다.
SQLite는 C#, Python, Flutter, Android 등 다양한 환경에서 파일 기반으로 접근할 수 있습니다.
14. DB 접속 정보의 기본 구조
DB에 접속하려면 보통 다음 정보가 필요합니다.
서버 주소, 포트, 데이터베이스 이름, 사용자 ID, 비밀번호, 문자셋, SSL 사용 여부입니다.
MariaDB 예시는 다음과 같습니다.
서버 주소: 127.0.0.1
포트: 3306
DB명: emeslite
사용자: root
비밀번호: 설정한 비밀번호
SQL Server 예시는 다음과 같습니다.
서버 주소: localhost
인스턴스: SQLEXPRESS
DB명: emeslite
인증 방식: Windows 인증 또는 SQL 인증
SQLite 예시는 더 간단합니다.
DB 파일 경로: C:\data\emeslite.db
SQLite는 서버 주소와 포트가 필요 없습니다.
파일 자체가 DB이기 때문입니다.
15. DB 접근 방식의 차이
DB 접근 방식은 크게 세 가지로 이해하면 됩니다.
첫째, 직접 접속 방식입니다.
프로그램이 DB에 바로 연결합니다.
C# WinForms 프로그램에서 MariaDB나 SQL Server에 직접 연결하는 방식입니다.
내부 업무 프로그램에서는 자주 사용됩니다.
둘째, API 서버를 통한 접속 방식입니다.
앱이나 웹 화면은 DB에 직접 접속하지 않고, 서버 API에 요청합니다.
API 서버가 DB에 접속해서 데이터를 처리합니다.
모바일 앱이나 외부 서비스에서는 이 방식이 안전합니다.
셋째, 파일 기반 접근 방식입니다.
SQLite처럼 DB 파일을 직접 열어서 사용하는 방식입니다.
간단한 개인용 프로그램이나 모바일 앱 내부 저장소에 적합합니다.
16. MES Lite 기준 DB 선택
중소 제조업용 MES Lite를 만든다고 가정하면 다음 기준으로 선택할 수 있습니다.
단일 PC에서 간단히 테스트하려면 SQLite가 좋습니다.
사내 여러 PC에서 동시에 사용하려면 MariaDB나 PostgreSQL이 좋습니다.
Windows 기반 C# 업무 시스템과 Microsoft 환경을 주로 사용한다면 SQL Server도 좋습니다.
웹이나 모바일 앱까지 확장하려면 DB에 직접 접속하기보다 API 서버를 두는 구조가 좋습니다.
실무적으로는 MariaDB와 C# WinForms 조합도 충분히 현실적입니다.
추후 모바일 앱이나 웹으로 확장하려면 API 서버를 추가하는 방식이 좋습니다.
17. 비개발자가 꼭 알아야 할 DB 주의사항
DB는 조심해서 다뤄야 합니다.
운영 DB에 직접 DELETE를 실행하면 데이터가 사라질 수 있습니다.
UPDATE에 WHERE 조건을 빼면 전체 데이터가 수정될 수 있습니다.
백업 없이 테이블 구조를 바꾸면 복구가 어려울 수 있습니다.
비밀번호를 소스코드에 그대로 넣으면 보안 문제가 생길 수 있습니다.
테스트 DB와 운영 DB를 구분해야 합니다.
바이브 코딩으로 AI에게 DB 작업을 맡길 때는 반드시 “테스트 DB 기준으로 작성해줘”, “삭제 전에 확인 메시지를 넣어줘”, “실행 전 백업 절차를 포함해줘”라고 요청하는 것이 좋습니다.
18. 바이브 코딩 지시문 예시
DB 관련해서 AI에게 이렇게 요청할 수 있습니다.
“MariaDB 기준으로 품목관리 테이블 생성 SQL을 만들어줘. 품목코드, 품명, 규격, 단위, 사용여부, 등록일자, 수정일자를 포함해줘.”
“C# WinForms에서 MariaDB에 접속해 품목 목록을 조회하는 예제를 만들어줘. DB 접속 오류가 나도 프로그램이 종료되지 않게 처리해줘.”
“Python으로 SQLite DB를 만들고, 엑셀 파일의 품목 데이터를 읽어서 저장하는 프로그램을 만들어줘.”
“SQL Server Express 기준으로 작업지시 테이블과 생산실적 테이블을 설계해줘.”
“MES Lite에서 작업지시, 자재투입, 생산실적, 재고 수불이 연결되도록 DB 구조를 제안해줘.”
이렇게 구체적으로 요청해야 좋은 결과를 얻을 수 있습니다.
19. 비개발자가 기억해야 할 DB 핵심 정리
DB는 데이터를 체계적으로 저장하는 공간입니다.
테이블은 데이터를 저장하는 틀입니다.
컬럼은 항목이고, 행은 실제 데이터 한 건입니다.
기본키는 데이터를 구분하는 고유값입니다.
SQL은 DB와 대화하는 언어입니다.
SELECT는 조회, INSERT는 추가, UPDATE는 수정, DELETE는 삭제입니다.
SQLite는 가볍고 설치가 쉽습니다.
MariaDB와 MySQL은 웹과 업무 시스템에서 많이 사용됩니다.
PostgreSQL은 강력하고 확장성이 좋습니다.
SQL Server는 Microsoft 환경과 잘 맞습니다.
프로그램은 드라이버나 라이브러리를 통해 DB에 접속합니다.
운영 DB는 반드시 백업과 권한 관리가 필요합니다.
마무리
바이브 코딩을 제대로 활용하려면 DB를 이해해야 합니다.
화면은 프로그램의 얼굴입니다.
코드는 프로그램의 근육입니다.
DB는 프로그램의 기억입니다.
기억이 없는 프로그램은 실무에서 사용할 수 없습니다.
비개발자가 DB 전문가가 될 필요는 없습니다.
하지만 테이블, 컬럼, 기본키, SQL, DB 종류, 접속 방식 정도는 반드시 알아야 합니다.
이 정도만 이해해도 AI에게 훨씬 정확한 지시를 내릴 수 있습니다.
“그냥 저장되게 해줘”가 아니라
“MariaDB의 item 테이블에 품목코드를 기본키로 저장하고, 중복이면 UPDATE, 신규면 INSERT 되게 해줘”라고 요청할 수 있게 됩니다.
이 차이가 바이브 코딩의 결과물 품질을 크게 바꿉니다.
'바이브 코딩(Vibe Coding) > 비개발자에게 바이브 코딩이란?' 카테고리의 다른 글
| 비개발자용 바이브 코딩 사전 지식 (1) | 2026.07.15 |
|---|---|
| [5회] 비개발자가 알아야 할 바이브 코딩 필수 개발 용어 (0) | 2026.07.08 |
| [4회] 비개발자가 알아야 할 프로그램의 종류와 구조 (0) | 2026.07.04 |
| [2회] 개발툴이란 무엇인가?— VS Code, Visual Studio, SDK, Git 설치 개념 잡기 (0) | 2026.07.03 |
| [1회] 바이브 코딩 전에 알아야 할 개발언어 이야기— Python, C#, JavaScript, SQL 쉽게 이해하기 (0) | 2026.07.03 |