리눅스에서 데이터베이스 설치 및 관리 (MySQL/PostgreSQL) 안녕하세요, mj입니다! 오늘은 리눅스에서 MySQL과 PostgreSQL 데이터베이스를 설치하고 관리하는 방법에 대해 알아보겠습니다. 데이터베이스는 애플리케이션의 핵심 요소로, 올바르게 설치하고 관리하는 것이 중요합니다. 1. MySQL 설치하기 MySQL은 가장 널리 사용되는 오픈 소스 데이터베이스 중 하나입니다. 다음은 Ubuntu에서 MySQL을 설치하는 방법입니다. 1.1. MySQL 설치 명령어 sudo apt update sudo apt install mysql-server 1.2. 설치 확인하기 설치가 완료되면 다음 명령어로 MySQL 서버가 정상적으로 실행되고 있는지 확인할 수 있습니다. sudo systemctl status mysql 1.3. MySQL 보안 설정 설치 후 보안 설정을 진행해야 합니다. 다음 명령어를 입력하여 보안 설정을 시작합니다. sudo mysql_secure_installation 1.4. 예시: 데이터베이스 생성 MySQL에 접속하여 새로운 데이터베이스를 생성해 보겠습니다. mysql -u root -p CREATE DATABASE sample_db; 출력 결과: Query OK, 1 row affected 2. PostgreSQL 설치하기 PostgreSQL은 강력한 기능을 제공하는 오픈 소스 데이터베이스입니다. 다음은 Ubuntu에서 PostgreSQL을 설치하는 방법입니다. 2.1. PostgreSQL 설치 명령어 sudo apt update sudo apt install postgresql postgresql-contrib 2.2. 설치 확인하기 PostgreSQL 서버가 정상적으로 실행되고 있는지 확인합니다. sudo systemctl status postgresql 2.3. PostgreSQL 사용자 및 데이터베이스 생성 PostgreSQL에 접속하여 새로운 사용자 및 데이터베이스를 생...
안녕하세요, MJ 입니다. 리눅스 명령어 free 를 설명하다 보니 buffer 와 cache 에 대한 설명이 필요하게 되었는데, 내용이 짧지 않아 별도 포스트를 작성합니다. 우선 buffer 와 cache 는 I/O 성능 향상을 위한 메모리 영역입니다. buffer/cache 의 필요성 블록 디바이스(하드디스크 등 디스크에 해당하는 저장 장치)에 있는 데이터를 읽거나, 새로운 데이터를 저장하는데, 이런 저장 장치는 다른 장치들(메모리,CPU-cache)에 비해 속도가 느립니다. I/O 가 일어날 때 마다 디스크에 접근하여 파일을 읽고 쓴다면 너무 오래 걸려서 다른 프로세스의 처리에 지장이 생길 수 있습니다. 이러한 문제를 해결하기 위해 캐시가 필요하게 됩니다. 캐시란 커널은 디스크를 빠르게 사용하고자 메모리의 일부를 디스크의 캐시로 사용합니다. 캐시의 동작 한번 읽은 파일의 내용을 캐시 영역에 저장한 뒤, 다시 해당 파일을 읽으려 시도할 때, 메모리 영역에 아까 저장 해 둔 내용을 바로 처리할 수 있게 하는 것 인데, 바로 이 메모리를 buffer, cache 라고 합니다. buffer 와 cache의 차이 buffer 와 cache 의 차이에 대해 설명 하기 위해 부가적인 설명을 추가합니다. [unix 파일시스템의 구조] → 유닉스의 파일시스템은 디렉토리와 파일을 찾기 쉽도록 유지 및 관리하는 시스템으로 4가지의 블록으로 구성되어있습니다. Boot block → 부팅에 필요한 정보를 담고 있습니다. Super block → 파일시스템의 어디부터가 i-node 블록인지, Data 블록인지 등의 정보를 담고 있습니다. i-node List → 파일 하나에 i-node 하나가 할당이 되는데 i-node 는 파일의 메타 데이터를 갖고 있습니다. 이 i-node 묶음으로 파일의 퍼미션, 소유자, 크기, inode 번호 등의 정보를 갖고있습니다. Data block 데이터가 저장되는 영역으로 각 데이터 블록은 한번에...