Linux - ubuntu mysql 설치 및 설정하기
1). mysql 검색
sudo apt-cache search mysql-server
2). mysql 설치
sudo apt-get install mysql-server-5.6
3). 외부에서 접속할 수 있도록 권한부여.
(1) mysql database에 로그인.
mysql -u root -p
mysql -h 192.168.115.207 -P 3306 -u root -p
(2) default db 변경
use mysql;
(3) 권한부여 : 모든 데이터배이스에 대하여 루트계정이 모든 권한을 갖는다
GRANT ALL PRIVILEGES ON *.* to 'root'@'%' IDENTIFIED BY 'admin_password';
password => 어드민 패스워드 입력
(4) 즉시반영
flush privileges;
4).my.cnf 설정화일 변경
sudo vi /etc/mysql/my.cnf
bind-address = 127.0.0.1 이부분을 주석처리
5). mysql Server 재시작
sudo /etc/init.d/service mysql restart
6). mysql - 한글 설정
sudo vi /etc/mysql/my.cnf 열어
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
character-set-server=utf8
collation-server=utf8_general_ci
init_connect = set collation_connection = utf8_general_ci
init_connect = set names utf8
[mysql]
default-character-set=utf8
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
default-character-set=utf8
[client]
default-character-set=utf8
[mysqldump]
default-character-set=utf8
내용을 추가
설정내용확인
mysql -h 192.168.115.207 -P 3306 -u root -p
7) innodb 설정
sudo vi /etc/mysql/my.cnf에 추가
innodb_data_home_dir = /var/lib/mysql
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = /var/lib/mysql
innodb_buffer_pool_size = 256M
innodb_additional_mem_pool_size = 20M
innodb_log_file_size = 64M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50
User database 생성
- CREATE DATABASE dbjoon CHARACTER SET utf8 COLLATE utf8_general_ci;
생성확인
- show databases;
User 계정 생성
- show databases;
- use mysql;
- show tables;
- SELECT Host, User, Password FROM user;
- 일반 사용자 추가
- CREATE USER 'user_name'@'localhost' identified by 'user_password';
- GRANT ALL ON user_DB_name TO 'user_name'@'localhost' WITH GRANT OPTION;
- Operation CREATE USER faild for 'usr_name'@'localhost' ===>>
- 사용자 삭제 - DROP USER 'user_name'@'localhost';
- or
- GRANT ALL ON user_DB_name.* TO 'user_name'@'localhost' IDENTIFIED BY 'user_password'
- WITH GRANT OPTION;
- //서버에서 접속 허용
- CREATE USER 'user_name'@'%' identified by 'user_password';
- GRANT ALL ON user_DB_name TO 'user_name'@'%' WITH GRANT OPTION;
- Operation CREATE USER faild for 'usr_name'@'%' ===>>
- 사용자 삭제 - DROP USER 'user_name'@'%';
- or
- GRANT ALL ON user_DB_name.* TO 'user_name'@'%' IDENTIFIED BY 'user_password'
- WITH GRANT OPTION;
- //외부 ip에서 접속 허용
- 특정 이름의 데이터베이스에 대한 모든 권한을 가지는 사용자 추가
- GRANT ALL ON `user_DB_name`.* TO 'user_name'@'%' IDENTIFIED BY 'user_password'
- ` ` '' 차이점 주의
- SHOW GRANTS FOR 'user_name'@'localhost'; mysql grants 확인
- SHOW GRANTS FOR 'user_name'@'%';
- flush privileges;
- SELECT Host, User, Password FROM user;
나갔다가 다시 진입 확인하기
- exit
데이터배이스 사용하기
- use dbjoon
User 의 테이블 생성하기
CREATE TABLE topic( | my_t 라는 테이블 생성 하는데 |
> id int(11) NOT NULL AUTO_INCREMENT, | 아이디는 int자료형인데 11자리까지이며 반드시 입력해야하며 자동증가방식이다 |
> title varchar(255) NOT NULL, | 타이틀은 varchar인데 255자리까지이며 반드시 입력해야 한다 |
> description text NULL, | 설명은 text 자료형인데 입력 안해도 된다. |
> created datetime NOT NULL, | 문서 작성시간은 datetime자료형이며 반드시 입력해야 한다. |
> PRIMARY KEY (id) | 대표키는 id로 한다. |
> ); |
CREATE TABLE topic( id int(11) NOT NULL AUTO_INCREMENT,
빈 테이블 조회하기
- SELECT * FROM topic;
선별 조회하기
- SELECT id, title, created FROM topic;
테이블 구조 보기
DESC 테이블명 DESCRIBE 테이블명 EXPLAIN 테이블명 |
데이터 추가하기.
- INSERT INTO `topic` (title,description,created) VALUES ('JavaScript','JavaScript ...',now());
- INSERT INTO `topic` (title,description,created) VALUES ('변수와 상수','변수와 상수 ...',now());
- INSERT INTO `topic` (title,description,created) VALUES ('연산자','연산자 ...',now());
- INSERT INTO `topic` (title,description,created) VALUES ('JSON','JSON ...',now());
정렬
- SELECT id, title, created FROM topic ORDER BY title DESC;
검색
- SELECT id, title, created FROM topic WHERE id = 2;
- SELECT id, title, created FROM topic WHERE id = 2 OR id = 1;
출력 튜플 제한
- SELECT id, title, created FROM topic LIMIT 2;
- SELECT id, title, created FROM topic LINIT 1,2; //배열[1]에 해당하는 튜플부터 2칸 출력하라!
'my_lesson > _Linux' 카테고리의 다른 글
Linux - Ubuntu 서버를 설치하고 세팅해야 할것들[9] : C/gcc C++/g++ (0) | 2016.03.10 |
---|---|
Linux - MySQL [Installl, Launching]설치_On Ubuntu (0) | 2016.03.05 |
Linux - 터미널 환경 웹 브라우저 [w3m] (0) | 2016.02.23 |
Linux - 터미널 환경 웹 브라우져 [LynX] (0) | 2016.02.23 |
Linux - 파일/디렉토리 이름 바꾸기 : [bash: mv, rename] (0) | 2016.02.18 |
댓글