인생에 뜻을 세우는데 있어 늦은 때라곤 없다

WEB/DB

Mysql 기본 사용법과 root 비밀번호 분실시 재설정

projin 2018. 12. 22. 11:21

 사용자 및 데이터베이스 만들기


* MySQL 데이터베이스 및 사용자를 생성


1. 명령 줄에서 루트 사용자로 MySQL에 로그인합니다.


   
shell> mysql -u root -p
   


2. MySQL  root 비밀번호를 입력 한 다음 Enter를 하면 로그인 됩니다.

3. 데이터베이스 사용자를 작성하려면 다음 명령을 입력하십시오. 사용자 이름 을 생성하려는 사용자로 바꾸고 비밀번호 를 사용자 비밀번호 로 바꿉니다 .

   

   
mysql> GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost' IDENTIFIED BY 'password';
   

   

   이 명령은 사용자에게 모든 권한을 부여하며, 예를 들어 명시 적으로 SELECT 권한을 부여 하려면 다음 명령을 사용합니다.

   

   
mysql> GRANT SELECT ON *.* TO 'username'@'localhost';
   


   // user 에게 test 데이터베이스 모든 테이블에 대한 권한 부여 

   
mysql> GRANT ALL PRIVILEGES on test.* to userid@localhost IDENTIFIED BY '비밀번호';
   


   // user 에게 test 데이터베이스 모든 테이블에 SELECT, INSERT, UPDATE 권한 부여

   
mysql> GRANT SELECT, INSERT, UPDATE on test.* to user@localhost IDENTIFIED BY '비밀번호';
   


   // user 에게 test 데이터베이스 모든 테이블에 SELECT, INSERT, UPDATE 권한 부여

   
mysql> GRANT SELECT, INSERT, UPDATE on test.* to user@localhost;   -- 패스워드는 변경없이 권한만 부여하는 경우
   


   // user 에게 모든 데이터베이스 모든 테이블에 권한 부여

   // 전역 권한은 모두 광범위한 보안문제가 수반되므로 권한을 허용하는 경우 신중해야 함

   
mysql> GRANT ALL PRIVILEGES ON *.* TO user@localhost IDENTIFIED BY '비밀번호' WITH GRANT OPTION;
   


   // 변경된 내용을 반영(권한 적용)

   
mysql> FLUSH PRIVILEGES;    
   



   MySQL 데이터베이스 사용 권한 설정에 대한 자세한 내용은 

   https://dev.mysql.com/doc/refman/5.5/en/GRANT.html


4. \ q 를 입력하면 mysql을 종료할 수 있습니다.


5. 방금 작성한 사용자로 MySQL에 로그인하려면 다음 명령을 입력하세요. 

   
shell> mysql -u username -p
   


6. 사용자의 비밀번호를 입력 한 다음 Enter 키를 누릅니다.


7. 데이터베이스를 만들려면 다음 명령을 입력하십시오

   
mysql> CREATE DATABASE dbname;
   


8. 새 데이터베이스로 작업하려면 다음 명령을 입력하세요. 

   
mysql> USE dbname;
   


9. 이제 신규로 만든 데이터베이스로 작업 할 수 있습니다. 

   예를 들어 다음 명령은 example 이라는 기본 테이블을 만드는 명령어와 일부 데이터를이 테이블에 삽입하는 명령어입니다.

   
mysql> CREATE TABLE example ( id smallint unsigned not null auto_increment, name varchar(20) not null, constraint pk_example primary key (id) );
mysql> INSERT INTO example ( id, name ) VALUES ( null, 'Sample data' );
   


10. 테이블 삭제 명령어입니다.

   
mysql> DROP TABLE tablename;
   


11. 데이터베이스 삭제 명령어입니다.

   
mysql> DROP DATABASE dbname;
   




* MYSQL의 루트 암호 재설정하기


1. root 사용자로 shell에 접소을 한 후 다음 단계의 명령을 실행해야합니다.


2. Mysql 중지

   CentOS 및 Fedora의 경우 다음을 입력하세요.

   
shell> service mysqld stop
   


   Debian 및 Ubuntu의 경우 다음을 입력하세요.

   
shell> service mysql stop
   


3. -skip-GRANT-tables 옵션을 사용하여 MySQL 서버를 다시 시작하세요. 

   
shell> mysqld_safe --skip-GRANT-tables &
   


4. Mysql에 로그인을 해서 비밀번호를 재설정 해야 합니다.

   
shell> MySQL
   


5. 비밀번호를 변경하는 명령어입니다.

   
mysql> UPDATE mysql.user SET Password=PASSWORD('NEW-PASSWORD') WHERE User='root';
mysql> FLUSH PRIVILEGES;
mysql> exit;
   


6. 다음 명령을 사용하여 MySQL 서버를 중지하십시오. MySQL 서버가 종료되기 전에 새 MySQL 루트 암호를 입력하라는 메시지가 나타납니다.

   
shell> mysqladmin -u root -p shutdown
   


7. MySQL 서버를 다시 시작하면 됩니다.


   CentOS 및 Fedora의 경우 다음을 입력하세요.

   
shell> service mysqld stop
   


   Debian 및 Ubuntu의 경우 다음을 입력하세요.

   
shell> service mysql stop
   


LIST