MySQL

Configuration

사용자 조회

use mysql;
select user, host from user;

계정생성

CREATE USER 'name'@'ip' IDENTIFIED BY 'password';
name : 사용자 계정
ip : 출발지 IP ( Any : % , 특정 대역 : xxx.xxx.%)
password : 비밀번호

계정에 권한 부여

GRANT ALL PRIVILEGES ON *.* TO 'name'@'ip' WITH GRANT OPTION;
FLUSH PRIVILEGES;
grant {권한} privileges on {스키마}.{테이블} to {username}@{ip};

외부접속 가능하게 설정하기

  1. my.cnf 수정하기 sudo vi /etc/mysql/my.cnf
  2. bind-address 주석처리 #bind-address = 127.0.0.1
  3. Mysql 재시작 sudo /etc/init.d/mysql restart

사용자 원격접속 허용하기

test 데이타베이스에 user123 계정이 111.222.333.444 IP 에서 접속 가능하게 설정
GRANT all privileges on test.* to 'user123'@'111.222.333.444' identified by '비번' ; (모든 IP에서 접속 가능하게 하려면 IP 부분을 %로 변경)


Database - Examples

mysql -u root -p  //로그인

show DATABASES;
create database testDB;  //데이터베이스 생성
drop database testDB;  //데이터베이스 삭제
use testDB;  //데이터베이스 선택

Table - Examples

create table testTable(
    id INT(11) not null auto_increment,
    name varchar(20),
    profile text,
    date datetime,
    constraint testTable_pk primary key(id)
);

create table person(
idx int unsigned auto_increment,
name varchar(30),
age int,
gender char(3),
grade int,
primary key(idx) //고유값 설정 및 자동증가
)Engine='InnoDB' default charset='utf8';

desc testTable;
alter table testTable add 유형;  // ADD
alter table testTable drop (column) 유형;  // Drop column
alter table [테이블명] change column [기존 컬럼명] [변경할 컬럼명] [변경할 컬럼 타입] // 컬럼이름 변경하기
alter table [테이블명] modify column [변경할 컬럼명] [변경할 컬럼 타입]  // 컬럼타입 변경
alter table testTable add constraint 제약조건명 제약조건 (칼럼명);  // 제약조건 추가





CREATE
    TABLE
        MySQL_Table(
            DateInserted DATETIME
        )
;

CREATE
    TRIGGER MySQL_Table_OnInsert BEFORE INSERT
            ON MySQL_Table FOR EACH ROW
    SET
        NEW.dateInserted = NOW()
;


Ref.

https://linuxism.tistory.com/33

시간대 변경하기
https://ingeni.tistory.com/entry/mysql-시간대timezone-변경하는-방법

  1. cd /usr/share/zoneinfo 를 쳐서 바꾸고 싶은 시간대가 있는지 확인합니다.

  2. 한국 시간대(Seoul)로 변경해 보겠습니다.
    cp /usr/share/zoneinfo/Asia/Seoul /etc/localtime

  3. 콘솔에서 date 명령어를 수행하면 시간대(TimeZone)이 KST로 변경된 것을 확인할 수 있습니다.

  4. mysql을 다시 실행 시키기 위해서 sudo su 슈퍼유저로 접속 한 후
    그 다음 콘솔에 service mysql restart 해줘서 mysql을 다시 실행시킵니다.

Subscribe to Keun's Story newsletter and stay updated.

Don't miss anything. Get all the latest posts delivered straight to your inbox. It's free!
Great! Check your inbox and click the link to confirm your subscription.
Error! Please enter a valid email address!