-
[MariaDB]CREATE DATABASE/USER, GRANT, FLUSHDatabase 2021. 4. 27. 14:21
mysql root 계정 접속
mysql -u root -p 비밀번호입력
database 확인
show databases;
mysql Database 사용(변경)
use mysql;
계정(user) 확인select Host, User, Password from user;
CREATE DATABASE
Create a database.
mariadb.com
CREATE [OR REPLACE] {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [create_specification] ... create_specification: [DEFAULT] CHARACTER SET [=] charset_name | [DEFAULT] COLLATE [=] collation_name | COMMENT [=] 'comment'
만들고 싶은 db 이름 : home 사용예) CREATE DATABASE home; CREATE DATABASE IF NOT EXISTS home;
CREATE USER
Create new MariaDB accounts.
mariadb.com
CREATE [OR REPLACE] USER [IF NOT EXISTS] user_specification [,user_specification ...] [REQUIRE {NONE | tls_option [[AND] tls_option ...] }] [WITH resource_option [resource_option ...] ] [lock_option] [password_option] user_specification: username [authentication_option] authentication_option: IDENTIFIED BY 'password' | IDENTIFIED BY PASSWORD 'password_hash' | IDENTIFIED {VIA|WITH} authentication_rule [OR authentication_rule ...] authentication_rule: authentication_plugin | authentication_plugin {USING|AS} 'authentication_string' | authentication_plugin {USING|AS} PASSWORD('password') tls_option: SSL | X509 | CIPHER 'cipher' | ISSUER 'issuer' | SUBJECT 'subject' resource_option: MAX_QUERIES_PER_HOUR count | MAX_UPDATES_PER_HOUR count | MAX_CONNECTIONS_PER_HOUR count | MAX_USER_CONNECTIONS count | MAX_STATEMENT_TIME time password_option: PASSWORD EXPIRE | PASSWORD EXPIRE DEFAULT | PASSWORD EXPIRE NEVER | PASSWORD EXPIRE INTERVAL N DAY lock_option: ACCOUNT LOCK | ACCOUNT UNLOCK }
CREATE USER
Create new MariaDB accounts.
mariadb.com
사용자 이름 구성 요소 : foo2 호스트 이름 구성 요소 : localhost 계정 이름 = 사용자 이름 구성 요소 + 호스트 이름 구성 요소 USER = 'foo2'@'localhost' IDENTIFIED BY 절을 사용하여 계정에 암호를 제공 mysql.user 테이블에 저장되기 전에 PASSWORD 함수에 의해 해시됨. CREATE USER foo2@localhost IDENTIFIED BY 'password';
GRANT
Create accounts and set privileges or roles.
mariadb.com
ALL PRIVILEGES 권한은 사용 가능한 모든 권한을 부여 모든 권한을 부여하면 주어진 권한 수준에만 영향을 줌. 예를 들어, 테이블에 대한 모든 권한을 부여한다고해서 데이터베이스 또는 전역 적으로 권한이 부여되는 것은 아님. GRANT ALL PRIVILEGES ON home.* TO 'foo2'@'localhost';
FLUSH
Clear or reload various internal caches.
mariadb.com
mysql 데이터베이스의 권한 테이블에서 모든 권한을 다시로드합니다. 서버가 --skip-grant-table 옵션으로 시작되면 권한 테이블이 다시 활성화됩니다. flush privileges;
'Database' 카테고리의 다른 글
MariaDB Lock(실전) (0) 2023.04.01 MariaDB Index 1편 (0) 2023.03.20 HikariCP 설정 일부분 들여다 보기 (0) 2023.02.26 MariaDB Explain (0) 2022.08.22 [Oracle] User Password 만료 기간을 무기한으로 변경하는 방법 (0) 2021.04.20