본문 바로가기

🌟2017년 이전 포스팅 모음 🌟/💞Linux OS💞

MySQL 환경 설정 및 계정 권한 설정

♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥ < MySQL 환경 설정 및 계정 권한 설정 > ♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
mysqladmin -u root password *************  ==> root의 패스워드 변경
mysqladmin -u root -p reload  ==> 설정 내용 다시 로드
mysqladmin -u rabbit -p create webrabbit  ==> 계정 명의로 디비 추가
mysqladmin -u rabbit -p reload  ==> 소속된 계정권한만 다시 로드 시작
mysql -u sunny -p webrabbit ==> 일반 사용자로 디비서버 접속
mysql -u root -p mysql  ==> 관리자로 디비서버로 접속
◈◈◈◈◈◈◈◈◈ 모든 디비 추가하기 ◈◈◈◈◈◈◈◈◈
mysql> create database xxxx_mainbbs;
mysql> create database xxxx1_mainbbs;
mysql> create database xxxx2_mainbbs;
mysql> create database xxxx3_mainbbs;
mysql> create database xxxx4_mainbbs;
◈◈◈◈◈◈◈◈◈ 디비 사용자 추가하고 패스워드 설정 방법 ◈◈◈◈◈◈◈◈◈
mysql> GRANT ALL PRIVILEGES ON *.*<디비 권한> TO
rabbit@localhost<사용자ID> IDENTIFIED BY 'xxxxxxxxxxx<패스워드>' WITH GRANT OPTION;
mysql> GRANT ALL PRIVILEGES ON *.* TO
xxxx@localhost IDENTIFIED BY 'xxxxxxxxx' WITH GRANT OPTION;
mysql> GRANT ALL PRIVILEGES ON *.* TO
xxxx1@localhost IDENTIFIED BY 'xxxxxxxx' WITH GRANT OPTION;
mysql> GRANT ALL PRIVILEGES ON *.* TO
xxxx2@localhost IDENTIFIED BY 'xxxxxxxx' WITH GRANT OPTION;
mysql> GRANT ALL PRIVILEGES ON *.* TO
xxxx3@localhost IDENTIFIED BY 'xxxxxxxx' WITH GRANT OPTION;
==> 이런식으로 계정을 추가하고 설정하면 된다.
◈◈◈◈◈◈◈◈◈ 계정별로 해당 디비의 권한 부여방법 ◈◈◈◈◈◈◈◈◈
mysql> grant all on xxxx1_mainbbs.* to
'xxxx1'@'localhost' identified by 'xxxxxx';
mysql> grant all on xxxx2_mainbbs.* to
'xxxx2'@'localhost' identified by 'xxxxx';
mysql> grant all on xxxx3_mainbbs.* to
'xxxx3'@'localhost' identified by 'xxxxxx';
mysql> grant all on xxxx4_mainbbs.* to
'xxxx4'@'localhost' identified by 'xxxxx';
mysql> grant all on xxxx5_mainbbs.* to
'xxxx5'@'localhost' identified by 'xxxxxxx';
◈◈◈◈◈◈◈◈◈ 기타 SQL 관련 명령 ◈◈◈◈◈◈◈◈◈
mysql> use serverbbs;  ==> 해당 디비 선택
mysql> show tables;  ==> 선택 디비 태이블 내용 출력
mysql> select * from phpbb_mainvote_voters;
mysql> drop database test;  ==> 해당 디비 삭제 명령
mysql> create table phpbb_cool( name CHAR(10), id VARCHAR(10) NOT NULL, url VARCHAR(20), email VARCHAR(20), milage INT(11), \
level CHAR(2), PRIMARY KEY(id) );
mysql> drop table phpbb_cool;  ==> 해당 디비 테이블 삭제
SQL문을 원하는 파일명으로 스크립트 형식으로 저장
cat << OS >> phpbb_cool.sql
create table phpbb_cool2( name CHAR(10), id VARCHAR(10) NOT NULL, url VARCHAR(30), email VARCHAR(30), milage INT(11), level CHAR(2), PRIMARY KEY(id) );
create table phpbb_cool3( name CHAR(10), id VARCHAR(10) NOT NULL, url VARCHAR(30), email VARCHAR(30), milage INT(11), level CHAR(2), PRIMARY KEY(id) );
create table phpbb_cool4( name CHAR(10), id VARCHAR(10) NOT NULL, url VARCHAR(30), email VARCHAR(30), milage INT(11), level CHAR(2), PRIMARY KEY(id) );
create table phpbb_cool5( name CHAR(10), id VARCHAR(10) NOT NULL, url VARCHAR(30), email VARCHAR(30), milage INT(11), level CHAR(2), PRIMARY KEY(id) );
OS
==> 약간만 응용하면 디비 계정도 자동으로 실행되게 할수 있다.
mysql -u rabbit  -p webrabbit < phpbb_cool.sql  ==> 방금 작성된 SQL문을 삽입하는 방법이다.
◈◈◈◈◈◈◈◈◈ 관리자 패스워드 복구 변경 ◈◈◈◈◈◈◈◈◈
killall mysqld
/usr/local/mysql/bin/safe_mysqld --skip-grant --datadir=/home/var/var &
ps aux | grep mysql
mysql -u root -p mysql
mysql> UPDATE user SET password=PASSWORD('새로운 패스워드') where user='root';
mysql> FLUSH PRIVILEGES ;
mysql -u root -p mysql
◈◈◈◈◈◈◈◈◈ DB Data 백업 하기 ◈◈◈◈◈◈◈◈◈
mysqldump -u root -p linux2 > SQL_Backup_linux2.SQL
mysqldump -u root -p linux3 > SQL_Backup_linux3.SQL
mysqldump -u root -p linux4 > SQL_Backup_linux4.SQL
mysqldump -u root -p linux5 > SQL_Backup_linux5.SQL
mysqldump -u root -p linux6 > SQL_Backup_linux6.SQL
◈◈◈◈◈◈◈◈◈ DB Data 백업 복구 ◈◈◈◈◈◈◈◈◈
mysqldump -u root -p linux2 < SQL_Backup_linux2.SQL
mysqldump -u root -p linux3 < SQL_Backup_linux3.SQL
mysqldump -u root -p linux4 < SQL_Backup_linux4.SQL
mysqldump -u root -p linux5 < SQL_Backup_linux5.SQL
mysqldump -u root -p linux6 < SQL_Backup_linux6.SQL