MariaDB 데이터베이스
설치
sudo apt update
sudo apt install mariadb-server
실행, 자동실행 설정
sudo systemctl start mariadb # MariaDB 서버 시작
sudo systemctl enable mariadb # 재부팅 시 자동 시작 설정
보안설정
sudo mysql_secure_installation
접속
sudo mariadb
버전 확인
mariadb --version
서비스 상태 확인
sudo systemctl status mariadb
데이터베이스 생성
CREATE DATABASE 데이터베이스이름;
데이터베이스 사용
USE 데이터베이스이름
google OAuth
Google OAuth로 받은 정보는?
- Google UID (sub): 구글 계정의 고유 식별자(가장 중요)
- 이메일 주소
- 사용자 이름(이름, 닉네임)
- 프로필 사진 URL (선택)
- 가입/최종 로그인 시각 (서비스 통계용)
- 기타 필요한 칼럼(추후 서비스 확장 고려)
- 로컬 서비스의 내부 User ID (Primary Key, auto increment)
CREATE TABLE google_users (
id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, -- 내부 사용자 ID
google_sub VARCHAR(30) NOT NULL UNIQUE, -- Google UID (sub), 고유 식별자, Not null & unique
email VARCHAR(255) NOT NULL, -- 구글 이메일(중복 허용 가능성 고려, unique OPTIONALLY)
name VARCHAR(100), -- 구글 이름(닉네임)
picture VARCHAR(500), -- 프로필 사진 URL
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, -- 최초 가입 시각
last_login_at DATETIME, -- 마지막 로그인 기록 (업데이트 할 때 사용)
is_active TINYINT(1) NOT NULL DEFAULT 1 -- 탈퇴/정지용 플래그 (옵션)
);
기본 테이블 생성
CREATE TABLE google_users (
id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
google_sub VARCHAR(30) NOT NULL UNIQUE,
email VARCHAR(255) NOT NULL
);
컬럼추가
- 관리자 여부 기록
ALTER TABLE google_users
ADD COLUMN is_admin TINYINT(1) NOT NULL DEFAULT 0;
- 사용자 등급
ALTER TABLE google_users
ADD COLUMN user_level TINYINT UNSIGNED NOT NULL DEFAULT 1;
- 등급 변경
UPDATE google_users
SET is_admin = 1, user_level = 4
WHERE id = 1;
UPDATE google_users
SET is_admin = 1, user_level = 4
WHERE google_sub = '관리자_sub값';
- 테이블 목록조회
SHOW TABLES IN login_tutorial;
- 컬럼 삭제
ALTER TABLE google_users DROP COLUMN is_admin;
- 테이블 내용확인
SELECT * FROM 테이블명;
phpmyadmin 설치
sudo apt update
sudo apt install phpmyadmin
- 설치확인
dpkg -l | grep phpmyadmin
- /etc/apache2/sites-available 에 phpmyadmin 관련 include 해줘야함
Include /etc/phpmyadmin/apache.conf
sudo systemctl reload apache2
- 아파치 서버 재시작
특정위치에 설치
cd /home/onethelab
wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz
tar xvf phpMyAdmin-latest-all-languages.tar.gz
mv phpMyAdmin-* phpmyadmin
폴더명 변경
mv phpMyAdmin-*-all-languages phpmyadmin