[컴퓨터에 대하여] #10 프로그램 내장 방식이란? 컴퓨터가 스스로 동작하게 된 계기
·
알쓸신잡/컴퓨터에 대하여
안녕하세요, 토스트데브입니다!오늘은 컴퓨터의 근간이 되는 개념, 바로 ‘프로그램 내장 방식’에 대해 알아보겠습니다.우리가 컴퓨터를 사용해 다양한 작업을 처리할 수 있는 이유는 명령어와 데이터를 컴퓨터가 ‘스스로 기억하고 처리’할 수 있기 때문인데요, 이 모든 것이 가능해진 배경에는 폰 노이만(John von Neumann)이 제안한Stored Program Concept, 즉 프로그램 내장 방식이 있습니다. 🧠 프로그램 내장 방식이란?과거의 기계식 또는 초기 계산기는 계산하려면 하드웨어 자체를 바꾸거나 배선 교체가 필요했습니다.즉, 하나의 기능만 수행하는 고정된 구조였던 셈이죠.하지만 프로그램 내장 방식에서는 명령어(프로그램)와 데이터를 같은 기억장치(메모리)에 함께 저장하고, 컴퓨터가 이를 불러와서..
[PHP] #21 PHP 문자열 함수, 문자열 암호화 및 해싱 password_hash부터 md5까지
·
Programming/PHP
안녕하세요, 토스트데브입니다.웹 개발에서 회원가입, 로그인, 민감한 데이터 저장 등을 구현할 때 꼭 알아야 할 것이 바로 문자열 암호화 및 해싱 처리입니다.이번 글에서는 PHP에서 자주 쓰이는 암호화와 해시 관련 함수들을 정리해보겠습니다. ✅ 해싱 vs 암호화의 차이 간단 정리구분 해싱 (Hashing) 암호화 (Encryption) 목적데이터 무결성 확인, 비밀번호 저장데이터 보안, 복호화 가능특징일방향 (복호화 불가능)양방향 (복호화 가능)대표 함수password_hash(), md5(), sha1()openssl_encrypt(), mcrypt_*() 등 ✅ 1. password_hash() – 안전한 비밀번호 해싱$password = "mySecret123";$hashed = password..
[Linux] #16 Ubuntu 방화벽 설정 가이드, ufw로 서버 보안 지키기
·
Server/Linux
안녕하세요, 토스트 데브입니다!리눅스 서버를 설치하고 외부 접속을 허용하면 보안이 매우 중요해지죠.그럴 때 사용하는 필수 도구가 바로 방화벽(Firewall) 입니다.오늘은 Ubuntu Server에서 간단하면서 강력하게 사용할 수 있는 ufw(Uncomplicated Firewall) 에 대해 정리해보겠습니다. 🔐 1. ufw란?ufw는 Ubuntu에서 기본 제공하는 방화벽 설정 도구로, iptables의 복잡한 문법을 간단하게 사용할 수 있게 도와줍니다.서비스 포트 열기/닫기IP 기반 차단/허용로그 설정 📦 2. ufw 설치 및 활성화Ubuntu에는 보통 기본 설치되어 있습니다. 없을 경우 설치부터!sudo apt install ufw ✅ 상태 확인sudo ufw status ✅ 방화벽 활성화..
[컴퓨터에 대하여] #09 전자식 계산기의 등장! ENIAC부터 컴퓨터의 문이 열리다
·
알쓸신잡/컴퓨터에 대하여
안녕하세요, 토스트데브입니다!오늘날 우리가 사용하는 컴퓨터는 어느 날 갑자기 생긴 것이 아닙니다.이전 글에서 다룬 기계식 계산기와 차분기관은 그 기반이 되었고, 오늘은 그 계보를 잇는 전자식 계산기의 등장에 대해 알아보려 합니다.전자 기술이 계산에 도입되면서 드디어 현대 컴퓨터로 이어지는 결정적인 진보가 시작된 것이죠. ⚙️ 기계식에서 전자식으로: 기술의 대전환기계식 계산기는 톱니바퀴, 레버, 기어를 이용해 숫자를 처리했습니다.하지만 속도와 정확성에는 한계가 있었죠.전자식 계산기는 이러한 한계를 극복하기 위해 기계적 부품 대신 진공관(真空管)을 사용해 계산을 수행하게 됩니다.이로 인해 계산 속도가 수백 배 이상 빨라지고, 복잡한 연산도 가능해졌습니다. 🧠 최초의 전자식 계산기, 에니악(ENIAC)1..
[PHP] #20 PHP 문자열 함수, 문자열 정리 및 필터링 함수 총정리 trim부터 htmlspecialchars까지
·
Programming/PHP
안녕하세요, 토스트데브입니다!웹 개발에서 사용자의 입력을 처리하다 보면 공백, 특수문자, 태그 등 불필요한 부분을 정리하거나 필터링해야 할 때가 많습니다.이번 글에서는 그럴 때 유용하게 사용할 수 있는 PHP 문자열 정리 및 필터링 함수들을 정리해보겠습니다. ✅ 1. trim() – 앞뒤 공백 제거$str = " hello world ";echo trim($str); // 출력: hello world좌우 공백 제거기본은 공백, 탭, 줄바꿈 문자 제거인자를 주면 특정 문자 제거도 가능:trim(",,apple,,", ","); → apple 🔹 관련 함수ltrim() : 왼쪽 공백만 제거rtrim() : 오른쪽 공백만 제거 ✅ 2. htmlspecialchars() – HTML 특수문자 필터링$..
[Linux] #15 Ubuntu 서버 호스트네임 설정 가이드, hostnamectl로 네트워크 이름 바꾸기
·
Server/Linux
안녕하세요, 토스트 데브입니다!이번 시간에는 리눅스에서 자주 사용하는 호스트네임(Hostname) 설정에 대해 정리해보겠습니다.서버를 여러 대 관리하거나 네트워크에서 식별할 필요가 있는 환경에서는 호스트네임을 잘 설정하는 것이 매우 중요합니다. 🧾 1. 호스트네임이란?호스트네임(Hostname) 은 네트워크 상에서 컴퓨터 또는 서버의 이름을 의미합니다.우리가 웹사이트를 www.example.com처럼 이름으로 접근하는 것처럼, 로컬 네트워크나 클라우드 환경에서도 호스트네임으로 서버를 구분합니다. 🔍 2. 현재 호스트네임 확인hostname또는hostnamectl 🛠️ 3. 호스트네임 변경 방법Ubuntu 및 대부분의 리눅스 시스템에서는 hostnamectl 명령어를 통해 쉽게 변경할 수 있습..
[컴퓨터에 대하여] #08 컴퓨터의 시작은 주판이었다? 초창기 계산도구의 역사
·
알쓸신잡/컴퓨터에 대하여
안녕하세요, 토스트데브입니다!우리가 지금 사용하는 컴퓨터와 계산기는 오랜 시간 동안의 발전을 거쳐 탄생한 결과물입니다.오늘은 인류가 수를 계산하고 정보를 처리하기 위해 사용했던 초창기 계산 도구들에 대해 함께 알아보겠습니다. 🗿 1. 손가락과 돌멩이 – 가장 오래된 계산기인류는 수천 년 전부터 수량을 세기 위해 손가락이나 돌멩이, 나뭇가지 등을 사용해왔습니다.이러한 도구들은 기록은 남지 않았지만, 수 개념의 시작이었으며 직관적인 계산 보조수단이었습니다. 📏 2. 결승(結繩)과 주판 – 고대 문명의 지혜결승법 (Knotted Ropes)고대 중국과 잉카 제국에서는 끈에 매듭을 지어 숫자나 정보를 기록했습니다.이는 단순한 수 계산을 넘어, 정보 저장의 역할도 했다고 알려져 있습니다.주판(Abacus)..
[PHP] #19 PHP 문자열 함수, 문자열 수정 및 대체 str_replace부터 정규식까지 총정리
·
Programming/PHP
안녕하세요, 토스트데브입니다!이번 글에서는 PHP로 문자열을 다룰 때 수정하거나 바꾸는 작업, 즉 "치환"과 "교체"를 수행하는 데 사용하는 유용한 함수들을 정리해보겠습니다. ✅ 1. str_replace() – 문자열 간단 대체$str = "I like JavaScript.";echo str_replace("JavaScript", "PHP", $str); // 출력: I like PHP.첫 번째 인자: 바꿀 문자열두 번째 인자: 새 문자열세 번째 인자: 원본 문자열🔁 배열 형태로 여러 개 치환도 가능!$text = "빨강, 파랑, 초록";echo str_replace(["빨강", "초록"], ["RED", "GREEN"], $text);// 출력: RED, 파랑, GREEN ✅ 2. substr..
[Linux] #14 Ubuntu 네트워크 설정 완벽 가이드 Netplan, ip, nmcli로 IP & DNS 설정하기
·
Server/Linux
안녕하세요, 토스트 데브입니다!서버를 설치하고 가장 먼저 확인해야 할 것 중 하나가 네트워크 설정입니다.IP가 잘못 설정되어 있거나 DNS가 누락되면 인터넷 연결은 물론 서버 간 통신 자체가 불가능하죠.이번 글에서는 Ubuntu Server에서 사용하는 대표적인 네트워크 설정 방식 3가지를 정리해드립니다. 🌐 1. 현재 IP 확인 - ip 명령어ip a각 네트워크 인터페이스의 IP, MAC 주소 확인보통 eth0, ens33, enp0s3 등이 나옴ip r현재 라우팅 정보 확인 (게이트웨이, 네트워크 경로 등) ⚙️ 2. Netplan을 이용한 고정 IP 설정Ubuntu 18.04 이후부터 기본 네트워크 설정 도구는 netplan입니다.✅ 설정 파일 열기sudo nano /etc/netplan/00..
[컴퓨터에 대하여] #07 PC만 컴퓨터가 아니다? 컴퓨터의 다양한 종류 알아보기
·
알쓸신잡/컴퓨터에 대하여
안녕하세요, 토스트데브입니다!우리는 매일같이 컴퓨터를 사용하고 있지만,정작 "컴퓨터의 종류에는 무엇이 있을까?"라는 질문에는 쉽게 대답하지 못하곤 하죠.이번 글에서는 우리가 주변에서 접할 수 있는 다양한 컴퓨터의 종류에 대해 함께 알아보겠습니다. 💻 1. 개인용 컴퓨터 (PC, Personal Computer)가장 익숙한 형태의 컴퓨터입니다.책상 위에 있는 데스크탑, 가방에 넣고 다니는 노트북, 최근에는 태블릿까지 포함되기도 하죠.일반 사용자용문서 작업, 인터넷, 게임, 코딩 등성능, 가격, 휴대성에 따라 선택 가능 🖥️ 2. 워크스테이션 (Workstation)개인용 컴퓨터처럼 보이지만, 더 강력한 성능을 가진 전문용 컴퓨터입니다.설계, 영상 편집, 시뮬레이션 등 전문가용 작업고성능 CPU, G..
[PHP] #18 PHP 문자열 함수, 한글도 정확하게! 문자열 추출 및 분할 함수 정리
·
Programming/PHP
안녕하세요, 토스트데브입니다!이번 글에서는 문자열을 잘라내거나 나누는 함수들을 정리해봅니다.특히 한글 같은 멀티바이트 문자 처리에 주의해야 하는 부분도 함께 다룹니다. ✅ substr() – 문자열의 일부분 추출$str = "toastdev";echo substr($str, 0, 5); // 출력: toast 인자: (문자열, 시작 위치[, 길이])영어 등 1바이트 문자에서는 잘 작동하지만,한글은 깨질 수 있음!$str = "안녕하세요";echo substr($str, 0, 2); // 출력: � (깨짐) ✅ mb_substr() – 멀티바이트 문자열을 정확히 추출한글처럼 2바이트 이상인 문자를 자를 때는 mb_substr()을 사용해야 합니다.$str = "안녕하세요";echo mb_subst..
[Linux] #13 리눅스 apt 고급 사용법, 패키지 검색, 삭제, PPA 저장소 추가까지 완전 정리
·
Server/Linux
안녕하세요, 토스트 데브입니다!지난 글에서는 apt update, apt install, apt upgrade 등 기본적인 apt 사용법을 소개해드렸죠?이번에는 패키지를 찾고(Package Search), 삭제하고(Remove), 새로운 저장소(PPA)를 추가하는 방법까지 한 단계 더 나아가 보겠습니다. 🔍 1. 패키지 검색 - apt search리눅스에서는 수천 개의 소프트웨어가 패키지화되어 있으며, apt를 통해 쉽게 설치할 수 있습니다.apt search apache"apache"라는 키워드를 포함한 패키지를 검색합니다.패키지 이름, 간단한 설명이 함께 출력됩니다.📌 검색 결과가 많을 경우 | less 또는 | grep과 함께 쓰면 편합니다:apt search apache | grep http..
[컴퓨터에 대하여] #06 데이터는 어떻게 처리될까? 정보가 되는 과정 쉽게 이해하기
·
알쓸신잡/컴퓨터에 대하여
안녕하세요, 토스트데브입니다!이번 글에서는 데이터 처리에 대해 알아보겠습니다.우리가 흔히 사용하는 스마트폰, 컴퓨터, 인터넷 서비스… 이 모든 기술의 중심에는 바로 데이터가 있습니다. 하지만 단순한 데이터는 ‘의미 없는 값’일 뿐, 이를 유용한 정보로 바꾸는 과정, 즉 데이터 처리가 핵심입니다. ✅ 데이터 처리란?데이터 처리(Data Processing)는입력된 원시 데이터(raw data)를 수집, 가공, 저장, 분석, 출력하여 의미 있는 정보로 바꾸는 과정을 말합니다.즉, 데이터 → 처리 → 정보 로 이어지는 흐름이며,우리가 유튜브에서 영상을 추천받거나, 인터넷 쇼핑 시 맞춤 상품이 뜨는 것도 모두 이 과정 덕분입니다. 🔄 데이터 처리의 기본 단계입력(Input)키보드, 센서, 마이크 등으로 데..
[PHP] #17 PHP 문자열 함수, 대소문자 및 첫 글자 변환 함수 간단 정리
·
Programming/PHP
안녕하세요, 토스트데브입니다!PHP로 문자열을 다룰 때 자주 사용하는 대소문자 변환 함수와 첫 글자 처리 함수를 정리해볼게요. ✅ strtolower() – 전체를 소문자로 변환$str = "ToaStDEV";echo strtolower($str); // 출력: toastdev ✅ strtoupper() – 전체를 대문자로 변환$str = "ToaStDEV";echo strtoupper($str); // 출력: TOASTDEV ✅ ucfirst() – 문장의 첫 글자만 대문자로$str = "toastdev";echo ucfirst($str); // 출력: Toastdev ✅ ucwords() – 각 단어의 첫 글자만 대문자로$str = "hello php world";echo ucwords(..
[Linux] #12 리눅스 apt 명령어 완전 정복, 패키지 설치부터 업데이트까지 실전 정리
·
Server/Linux
안녕하세요, 토스트 데브입니다!Ubuntu Server나 데스크탑을 사용하다 보면 자주 접하는 명령어가 있죠?! 바로 apt입니다.apt는 Ubuntu, Debian 등 APT 기반 리눅스 배포판에서 패키지를 설치하고 관리하는 도구로, 리눅스를 배우는 분이라면 반드시 익혀야 할 핵심 명령어입니다.이번 글에서는 apt update, apt upgrade, apt install 등 가장 많이 사용하는 apt 명령어들을 설명드릴게요. 📦 apt란 무엇인가요?APT는 Advanced Package Tool의 약자로, 리눅스에서 프로그램을 설치하거나 삭제할 때 사용하는 패키지 관리 시스템입니다.Ubuntu에서는 apt를 통해 프로그램을 설치하고 업데이트하며, 의존성도 함께 자동으로 처리해줍니다. 🔁 1. ..
[IT 국내 소식] 갤럭시 S25, 출시 두 달 만에 300만대 돌파! 역대 최단기록 경신
·
알쓸신잡/IT 국내외 소식
안녕하세요, 토스트데브입니다.삼성전자의 상반기 플래그십 스마트폰 ‘갤럭시 S25 시리즈’가 역대 S 시리즈 중 가장 빠른 속도로 국내 300만대 판매를 돌파했습니다.전작 대비 무려 2달 이상 빠른 기록이라고 하니, 단순한 ‘성공’을 넘어선 ‘대흥행’이라 불릴만 합니다. 📈 주요 판매 성과 요약출시일: 2025년 2월300만대 돌파 시점: 2025년 8월 1일판매 속도:100만대, 200만대 돌파 속도 → 전작 대비 1~2주 이상 단축300만대 돌파 → 전작 대비 2개월 이상 단축역대 S 시리즈 5G 모델 중 최단기간 판매 기록 달성 📌 인기 요인은 무엇일까?주요 요인설명🧠 개인화된 AI 기능 ‘나우 브리프’사용자별 정보 요약 및 제안 기능으로 활용도 상승✨ 갤럭시 AI 핵심 기능생성형 편집, 오..
[IT국내 소식] 구글, 한국 지도 반출 위해 ‘가림 처리된 위성사진’ 구매 의향…정부 결정은?
·
알쓸신잡/IT 국내외 소식
안녕하세요, 토스트데브입니다.한국 내 정밀 지도 반출 이슈가 다시 수면 위로 떠올랐습니다.이번에는 구글이 “보안 문제를 고려해, 민감 시설이 가려진 위성사진을 구매할 의향이 있다”고 직접 밝혀 화제가 되고 있습니다.이는 단순한 기술적 문제를 넘어서, 국가 안보와 디지털 주권, 외교 문제 까지 얽힌 복잡한 사안입니다. 📰 뉴스 요약구글은 위성사진을 가림 처리한 후 구매하는 방안을 제시하며, 한국 정부의 지도 반출 요청에 대한 전향적 자세를 보임.지도 반출 요청 대상은 1:5,000 축척의 국가기본도로, 이는 보안심사를 거친 데이터라고 주장.한국에서 구글 지도 길찾기 기능이 불가능한 상황에 대해“매년 1,000만 외국인이 불편을 겪는다”며 정부와의 협의를 강조.정부는 2025년 8월 8일에 이 사안에 대..
[국내 IT 소식] ‘국가대표 AI팀’ 5곳 출범! K-인공지능의 미래를 이끄는 주역은?
·
알쓸신잡/IT 국내외 소식
안녕하세요, 토스트데브입니다.정부가 추진하는 국산 인공지능(AI) 기초모형 개발 사업, 즉 ‘한국형 AI 파운데이션 모델 프로젝트’의 핵심 수행 기업(정예팀) 5곳이 공개되었습니다.이는 국가 주권형 AI(소버린 AI) 생태계 조성을 위한 대규모 프로젝트로, 앞으로 대한민국의 AI 주도권 확보에 핵심이 될 팀들입니다. 🏆 선정된 국가대표 AI 정예팀 TOP 5팀명주요 참여 기업 및 기관핵심 목표네이버클라우드팀네이버, KAIST, 고려대, 서울대 외옴니 파운데이션 모델 (문서·음성·영상 통합 AI)업스테이지팀업스테이지, 뷰노, 플리토 외 10여 개 기관국민 1천만명 이상 사용하는 AI 모델 ‘솔라 WBL’SK텔레콤팀SKT, 크래프톤, 리벨리온, 서울대 외‘포스트 트랜스포머’ 기반 K-AI 서비스 구현NC..
[국내 IT 소식] 네이버, 스페인판 당근마켓 ‘왈라팝’ 인수…유럽 C2C 시장 정조준
·
알쓸신잡/IT 국내외 소식
안녕하세요, 토스트데브입니다.오늘은 네이버의 굵직한 해외 인수 소식을 전해드립니다.바로 스페인 최대 C2C(개인 간 거래) 플랫폼인 '왈라팝(Wallapop)' 인수입니다.이번 인수는 단순한 해외 투자 그 이상으로,네이버의 글로벌 커머스 전략과 AI 생태계 확장 계획을 보여주는 핵심적인 행보입니다. 📰 주요 내용 요약인수 대상: 스페인 C2C 플랫폼 ‘왈라팝(Wallapop)’인수 금액: 약 6045억 원 (3억7700만 유로)인수 지분율: 70.5%기존 지분: 2021~2023년까지 29.5% 보유 → 이번 인수로 경영권 확보왈라팝의 MAU: 약 1900만 명 🛒 왈라팝은 어떤 서비스?왈라팝은 스페인 내에서 가장 큰 개인 간 중고거래 플랫폼입니다.국내 이용자에게 익숙한 당근마켓과 유사한 모델이며..
[PHP] #16 PHP 문자열 함수, 문자열 길이 및 정보 확인 함수 총정리!
·
Programming/PHP
안녕하세요, 토스트데브입니다!이번 글에서는 PHP 문자열(String)을 다룰 때 유용하게 사용할 수 있는 내장 함수들 중 ‘문자열 정보 확인’과 관련된 함수들을 정리해보겠습니다. ✅ 1. strlen() – 문자열 길이 확인$str = "hello";echo strlen($str); // 출력: 5영문은 문자 수 그대로 반환한글은 UTF-8 환경에서 문자 1개 = 바이트 3개로 계산되므로 주의!예: "안녕" → strlen("안녕")의 결과는 6이 될 수 있음 (UTF-8 기준)✅한글도 글자 수로 정확히 세고 싶다면? → mb_strlen() 사용! ✅ 2. mb_strlen() – 멀티바이트 문자열 길이 확인$str = "안녕하세요";echo mb_strlen($str); // 출력: 5 한글..
[국내 IT소식] 국가바이오위원회 출범, 대한민국 바이오 산업의 대전환이 시작된다
·
알쓸신잡/IT 국내외 소식
안녕하세요, 토스트데브입니다.대한민국 바이오 산업 정책의 중심축이 될 `국가바이오위원회`의 출범 소식에 대해 소개해드릴게요.과학기술과 헬스케어, AI, 그리고 산업정책이 연결되는 이 위원회는 단순한 자문기구를 넘어 대한민국 바이오 전략의 컨트롤타워 역할을 하게 됩니다. 🧬 국가바이오위원회란?출범일: 2025년 1월 23일형태: 대통령 직속 위원회역할: 바이오 기술 R&D, 산업 육성, 규제 혁신, 인재 양성, 바이오 안보 등 범부처 바이오 정책 조율 및 실행 총괄 👥 위원 구성위원장: 대통령실 과학기술수석부위원장: 이상엽 KAIST 특훈교수민간 위원: 바이오, AI, 데이터 전문가 등 24명정부 위원: 과기정통부, 복지부, 산업부 등 장관 및 실무진 12명 🧭 주요 추진 전략1. 대한민국 바이..
[국내 IT소식] K‑휴머노이드 연합 출범! 국산 로봇의 새로운 전환점
·
알쓸신잡/IT 국내외 소식
안녕하세요, 토스트데브입니다.대한민국의 로봇 기술에 있어 하나의 이정표가 될 ‘K‑휴머노이드 연합(K-Humanoid Alliance)’ 출범에 대해 알아보려 합니다.산업계부터 학계까지, 우리나라 대표 로봇 기술 주체들이 모여 2028년까지 상용 휴머노이드를 개발하겠다는 야심찬 목표를 세웠습니다. 🤖 K‑휴머노이드 연합이란?출범일: 2025년 4월참여 기업/기관:LG전자, 두산로보틱스, 레인보우로보틱스, 트위니 등 산업계KAIST, 서울대, 포항공대 등 학계딥엑스(DEEPX), 리벨리온 등 반도체 AI 스타트업주관: 산업통상자원부, 한국로봇산업진흥원 🎯 목표와 비전2028년까지 20kg 이상 물체를 운반할 수 있는 휴머노이드 상용화2025~2026년 시제기 제작 → 2027년 시범 보급 → 202..
[국내 IT소식] 통신 보안의 경고등, SKT 해킹 사건 총 정리
·
알쓸신잡/IT 국내외 소식
안녕하세요, 토스트데브입니다.오늘은 많은 국민들에게 충격을 안겼던 SK텔레콤의 대규모 개인정보 유출 사고에 대해 정리해보려고 합니다.총 2,700만 건 이상의 민감한 정보가 외부로 유출되었고, 정부는 강도 높은 규제 조치를 발표했습니다.이 사건이 왜 심각한지, 무엇이 문제였고, 앞으로 어떤 변화가 필요한지 함께 살펴보겠습니다. 🔍 사건 개요발생 시점: 2025년 4월유출 규모: 약 2,700만 건, 총 9.82GB 분량의 가입자 정보유출 정보: 전화번호, IMEI, USIM 인증키 등원인: 오랜 기간 방치된 악성코드 감염 서버, 침해 탐지 미비, 암호화 부재 ⚠ 정부 조사 결과SKT 서버 중 28대가 33종 이상의 악성코드에 감염침해 사실을 수년간 인지하고도 보고하지 않음보안로그 저장 부족, 접근 ..
[SQL 실전] #01 SQL JOIN 실전 가이드, 다중 조인부터 SELF JOIN까지
·
Database/SQL
안녕하세요 토스트데브입니다 😊 SQL 기초 게시글 SQL #01 ~ SQL #11을 통해서 SQL의 기초와 문법에 대해 배워보았습니다. 이번 글 부터는 이제는 실무에서 더 자주마주치는 SQL에 대해 조금 더 분석해 볼게요!SQL 기초에서 JOIN 문법을 익혔다면, 이제는 실무에서 더 자주 마주치는 JOIN 심화 활용법으로 넘어갈 차례입니다.이번 글에서는 다중 테이블 조인, Self JOIN, JOIN + 서브쿼리 조합, 그리고 헷갈리기 쉬운 USING vs ON 비교까지 한번에 정리해드립니다! 1️⃣ 다중 테이블 조인 (Multi-table JOIN)✅ 개념두 개 이상의 테이블을 JOIN해서 하나의 결과로 합치는 방식입니다. 실무에서는 거의 항상 사용됩니다. 📌 예제SELECT users.name,..
[SQL] #11 SQL DCL과 TCL 완전 정리, 권한 관리와 트랜잭션 제어 쉽게 이해하기
·
Database/SQL
안녕하세요 토스트데브입니다 😊SQL에는 데이터를 저장하고 구조를 정의하는 명령어 외에도, 접근 권한을 제어하고 데이터 처리의 신뢰성을 유지하는 명령어들이 존재합니다.오늘은 그중에서 DCL(Data Control Language)과 TCL(Transaction Control Language)에 대해 알아보겠습니다! 🛡️ DCL: 데이터 제어어 (Data Control Language)✅ DCL이란?DCL(Data Control Language)은 데이터베이스 사용자에게 권한을 부여하거나 회수하는 명령어입니다.👉 누가 어떤 데이터에 접근하고 조작할 수 있는지를 통제하는 기능이에요. 🔐 주요 DCL 명령어1️⃣ GRANT – 권한 부여GRANT SELECT, INSERT ON users TO 'gu..
[SQL] #10 SQL 데이터 정의어(DDL) 완전 정리, CREATE부터 DROP까지
·
Database/SQL
안녕하세요 토스트데브입니다 😊오늘은 SQL에서 테이블, 컬럼, 제약 조건 등을 만들고 수정할 때 사용하는 명령어, 바로 데이터 정의어(DDL)에 대해 알아보겠습니다!SQL을 처음 배우는 분들이라면 꼭 한 번 정리하고 넘어가야 할 중요한 개념이에요. 🏗️ 데이터 정의어 DDL이란?DDL(Data Definition Language)은 데이터베이스의 구조를 정의하거나 변경하는 SQL 명령어입니다.즉, 테이블을 만들고, 바꾸고, 삭제할 때 사용하는 명령어라고 보면 됩니다. 🧩 주요 DDL 명령어1️⃣ CREATE – 새 객체 생성CREATE TABLE users ( id INT PRIMARY KEY, name VARCHAR(50), email VARCHAR(100), created_at DAT..
[SQL] #09 뷰(View)와 인덱스(Index) 완벽 이해! 속도와 재 사용을 동시에 잡자!
·
Database/SQL
안녕하세요 토스트데브입니다 😊오늘은 SQL에서 자주 사용되지만 헷갈릴 수 있는 두 가지 개념, 뷰(View)와 인덱스(Index)에 대해 깔끔하게 정리해드릴게요! 👁️ SQL 뷰(View)란?✅ 뷰의 정의뷰(View)는 하나 이상의 테이블에서 미리 정의해둔 SELECT 쿼리의 결과를 저장한 가상의 테이블입니다.📌 실제 데이터를 저장하지 않고, 쿼리 결과만을 보여주는 읽기 전용 창이라고 생각하면 이해가 쉬워요. 📌 뷰의 사용 목적복잡한 쿼리를 간단하게 재사용민감한 데이터를 숨기고 보여주기데이터 접근을 논리적으로 분리보안성과 가독성 향상 🧪 뷰 생성 예제CREATE VIEW active_users ASSELECT id, name, emailFROM usersWHERE is_active = 1;➡️..
[SQL] #08 SQL 서브쿼리 완전 정리, 중첩 쿼리의 개념과 예제까지
·
Database/SQL
안녕하세요 토스트데브입니다. 오늘은 SQL 기초 중에서도 헷갈리기 쉬운 서브쿼리(Subquery)와 중첩 쿼리(Nested Query)에 대해 쉽고 명확하게 정리해드리겠습니다.데이터를 좀 더 유연하게 조회하고 싶다면 꼭 알아야 할 개념이에요! 🧐 서브쿼리란?서브쿼리(Subquery)는 SQL문 안에 또 다른 SELECT 문을 포함시킨 것입니다.말 그대로 “쿼리 안의 쿼리”, 즉 중첩 쿼리(Nested Query)라고도 불립니다. ✅ 서브쿼리 기본 구조SELECT 컬럼FROM 테이블WHERE 컬럼 = (SELECT ... FROM ... WHERE ...); 🔍 서브쿼리 사용 예제🎯 예제 1: 가장 높은 점수를 받은 학생 조회SELECT name, scoreFROM studentsWHERE scor..
[SQL] #07 SQL JOIN 완전 정복! INNER부터 LEFT, RIGHT까지 한눈에
·
Database/SQL
안녕하세요! 토스트데브입니다.오늘은 SQL에서 여러 테이블을 연결해 데이터를 조회하는 방법, 바로 JOIN에 대해 정리해보겠습니다. 🔗 SQL JOIN이란?SQL의 JOIN은 두 개 이상의 테이블을 연결해 관련 있는 데이터를 함께 조회할 수 있도록 해주는 기능입니다.실제 프로젝트에서는 데이터가 여러 테이블에 나뉘어 저장되기 때문에, JOIN은 실무에서 반드시 필요한 핵심 기능입니다. 📌 JOIN의 기본 구조SELECT A.컬럼, B.컬럼FROM 테이블A AJOIN 테이블B BON A.기준컬럼 = B.기준컬럼; 🧩 JOIN의 종류1️⃣ INNER JOIN – 공통된 값만 조회두 테이블에서 일치하는 데이터만 조회합니다.SELECT users.name, orders.productFROM users..
[Linux] #11 리눅스 sudo 권한 설정 완전 정리, 관리자 권한 부여와 보안 팁
·
Server/Linux
안녕하세요, 토스트 데브입니다!이번 시간에는 리눅스에서 sudo 권한이 무엇인지, 어떻게 설정하는지, 그리고 실무에서의 안전한 운영 팁까지 정리해보겠습니다. 🧑‍💼 1. sudo 권한이란?sudu는 루트(root) 계정에 직접 로그인하지 않고도, 일반 사용자에게 특정 명령어에 관리자 권한을 위임할 수 있게 해주는 명령어입니다.sudo apt updatesudo systemctl restart apache2위 명령처럼 sudo를 앞에 붙이면 일반 사용자도 중요한 시스템 설정을 조작할 수 있게 됩니다. 🛠️ 2. 사용자에게 sudo 권한 부여하기✅ 방법 1: 사용자 sudo 그룹에 추가 (Ubuntu 기본 방식)sudo usermod -aG sudo username-aG: 기존 그룹을 유지하며 su..