[windows OS]
scoop 패키지 관리자를 이용하여 mariadb 설치
> scoop install mariadb
서비스에 등록
mysqld --install "서비스명"
> mysqld --install "mariadb"
서비스 시작
net start 서비스명
> net start mariadb (windows)
서비스 종료
net stop 서비스명
> net stop mariadb
[mac]
mariadb 설치
> brew install mariadb
mariadb 설치 후 root 암호 변경
> sudo mysql_secure_installation
mariadb 실행
> brew services start mariadb
> brew services stop mariadb
또는
> mysql.server start
> mysql.server stop
[linux]
mariadb 설치
> sudo apt update
> sudo apt install mariadb-server
> sudo systemctl status mariadb
> mysql -V
mariadb 설치 후 root 암호 변경
> sudo mysql_secure_installation
mariadb 실행
> service mariadb start
> service mariadb stop
> service mariadb status
로컬 MySQL 서버에 접속
mysql -u root -p
Enter password: 암호입력
일단 권한 검사를 하지 않는 모드로 MariaDB를 실행한다.
$ sudo mysqld_safe --skip-grant-tables
root 사용자가 로컬호스트에서 접근할 수 있도록 설정을 변경한다.
$ sudo mysql -u root -p <--- MariaDB 서버에 접속한다.
> GRANT ALL PRIVILEGES on *.* to 'root'@'localhost' IDENTIFIED BY '<password>';
> FLUSH PRIVILEGES;
만약, 위의 명령이 실행되지 않으면, 다음 명령을 실행한다.
> UPDATE mysql.user SET plugin = 'mysql_native_password' WHERE user = 'root' AND plugin = 'unix_socket';
> FLUSH PRIVILEGES;
> exit
다시 명령 프롬프트로 나와 MariaDB 를 실행 종료한다.
$ ps -el | grep mysql <--- 현재 실행 중인 MariaDB 프로세스를 알아낸다.
$ sudo kill 프로세스번호 <--- 모든 MariaDB 프로세스를 종료한다.
그리고 다시 정식으로 MariaDB 서버를 실행한다.
$ service mariadb start
원격 MySQL 서버에 접속
mysql -h 서버주소 -u root -p
Enter password: 암호입력
alter user 'root'@'localhost' identified by '1111';
CREATE USER '사용자아이디'@'원격호스트주소' IDENTIFIED BY '암호';
로컬에서만 접속할 수 있는 사용자를 만들기:
CREATE USER 'study'@'localhost' IDENTIFIED BY '1111';
=> 이 경우 study 사용자는 오직 로컬(서버를 실행하는 컴퓨터)에서만 접속 가능한다.
=> 다른 컴퓨터에서 실행하는 MySQL 서버에 접속할 수 없다는 것을 의미한다.
원격에서만 접속할 수 있는 사용자를 만들기:
CREATE USER 'study'@'%' IDENTIFIED BY '1111';
=> 이 경우 study 사용자는 원격에서만 접속 가능하다.
select user, host from 데이터베이스명.테이블명;
select user, host from mysql.user;
DROP USER '아이디'@'원격호스트주소';
DROP USER 'study'@'localhost';
mariadb에서는 default 키워드를 사용하지 않는다.
CREATE DATABASE 데이터베이스명 CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE DATABASE studydb CHARACTER SET utf8 COLLATE utf8_general_ci;
DROP DATABASE 데이터베이명;
DROP DATABASE studydb;
GRANT ALL ON 데이터베이스명. TO '사용자아이디'@'서버주소';
GRANT ALL ON studydb. TO 'study'@'localhost';
show databases;
quit or exit (프로그램 종료 후)
mysql -u study -p (다시 실행)
use 데이터베이스명
use studydb;
show tables;
사용자 생성 : user1
user1이 사용할 데이터베이스 생성: user1db
사용자 생성 : user2
user2가 사용할 데이터베이스 생성: user2db
사용자 생성 : user3
user3이 사용할 데이터베이스 생성: user3db
사용자 생성 : user4
user4가 사용할 데이터베이스 생성: user4db
사용자 생성 : user5
user5가 사용할 데이터베이스 생성: user5db