< mysqladmin을 이용하여 root 암호 설정 >
$ mysqladmin -u root -p password new-password
< 접속 하기 >
$ mysql -u root -p
< Database 보기 >
mysql> show databases;
mysql> show tables; <- table 보기
< Database 생성 >
mysql> create database DB명;
< Mysql에서 새로운 사용자 추가 >
일단 root로 접속
mysql> use mysql
mysql> INSERT INTO user VALUES('%','mha',password('hanwith000'),'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','','0','0','0','0');
< 사용자에게 Database 권한 주기 >
mysql> INSERT INTO db (Host, Db, User, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv)
-> VALUES('%', 'DB명', '사용자', 'Y', 'Y', 'Y', 'Y','Y','Y');
mysql> FLUSH PRIVILEGES; <- 바로 적용 하기
-
Mysql USER 추가Linux/Tools 2015. 11. 21. 07:53
1. user create
<p>mysql> CREATE USER 'user'@localhost IDENTIFIED BY ??????;
mysql> GRANT ALL PRIVILEGES ON *.* TO 'user'@'localhost';
mysql> FLUSH PRIVILEGES;
2. DB create
mysql> create database testdbname;
3. premition DB
ALL PRIVILEGES - 모든데이터베이스에 대한 권한을 가지게 됨
CREATE - 새로운 테이블 또는 데이터베이스를 생성할 수 있음
DROP -테이블 또는 데이터 베이스를 삭제
DELETE - 테이블 삭제
INSERT - 테이블에 row 를 삽입가능
SELECT - 데이터베이스의 select 명령문을 사용
UPDATE - 테이블 row 수정
ALTER - 테이블수정
GRANT OPTION - 권한 설정
mysql> GRANT [위의 권한 중 원하는 것을 ,로 구분] ON [데이터베이스].[테이블] TO [사용자아이디]@localhost;
예
mysql> grant select,create,insert,update,delete on wp_test.* to wpmaster@localhost;
4. 권한 부여 확인
mysql> SHOW GRANTS FOR ['사용자']@localhost;
5.새로고침
mysql> FLUSH PRIVILEGES;
6. 삭제
권한 삭제
mysql> REVOKE [GRANT 와 같은 형식으로 권한 나열] ON [데이터베이스].[테이블] FROM [사용자아이디]@localhost;
사용자 삭제
mysql> DROP USER '사용자'@localhost;
▶ 사용자 추가할때 에러 발생
ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value
해결방안
▶ mysql 버전이 높아지면서 보안관련 오류라고 한다. 사용자추가시 몇개의 필드를 추가한다.로컬접근 허용 mysql> insert into user(host,user,password,ssl_cipher,x509_issuer,x509_subject) -> values ('localhost','사용자명',password('비밀번호'),'','','');
외부접근 허용 mysql> insert into user(host,user,password,ssl_cipher,x509_issuer,x509_subject) -> values ('%','사용자명',password('비밀번호'),'','','');
INSERT INTO db (Host, Db, User, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv) VALUES('%', 'hdaasdb', 'mha', 'Y', 'Y', 'Y', 'Y','Y','Y');
[출처] mysql user add|작성자 카카보이즈