본문 바로가기
DataBase/MySQL

Mac에서 MySQL설치, DB 및 User 생성

by 빅경 2024. 5. 20.
728x90
반응형

MySQL 설치

Homebrew를 이용해 Mac에 MySQL를 설치하는 방법을 설명합니다.

 

MySQL 서비스 확인

brew 명령어를 이용해서 mysql 서비스를 확인할 수 있습니다.

$ brew services list |grep mysql
mysql     started         user ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

 

설치된 MySQL 삭제

과거 버전이 설치돼 있을 경우 다음과 같은 에러를 발생합니다.

'The server quit without updating PID file'
'unsupported redo log format'

brew services list 명령어로 설치된 애플리케이션 확인 후 mysql 및 데이터 삭제 후 설치 진행해야 합니다. /usr/local/var/mysql 디렉토리는 mysql 로그 파일들이 있는 디렉토리 입니다.

$ brew uninstall mysql
$ rm -rf /usr/local/var/mysql
 

brew 명령어로 설치할 mysql 정보 확인

$ brew info mysql
==> mysql: stable 8.3.0 (bottled)
 

mysql 설치

$ brew install mysql
...

We've installed your MySQL database without a root password. To secure it run:
mysql_secure_installation

MySQL is configured to only allow connections from localhost by default

To connect run:
mysql -uroot

To have launchd start mysql now and restart at login:
brew services start mysql
Or, if you don't want/need a background service you can just run:
mysql.server start
 
  • 보안 설정을 위해 mysql_secure_installation를 실행해야함
  • 시작프로세스에 등록하여 컴퓨터 부팅하면 mysql도 자동으로 실행하는 방법
    • launched를 사용하는 경우 brew services start mysql 실행
    • launched를 사용하지 않으면 mysql.server start 실행

 

버전 및 서비스 확인

$ mysql --version
mysql Ver 8.0.30 for macos12.6 on x86_64 (Homebrew)

$ mysql.server status
 SUCCESS! MySQL running (5173)
 

mysql start/stop

$ mysql.server stop
Shutting down MySQL
... SUCCESS! 

$ mysql.server start
Starting MySQL
 SUCCESS! 
 

 

root 사용자 로그인

비밀번호 없이 root 계정으로 로그인 합니다.

$ mysql -u root
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 14
Server version: 8.0.30 Homebrew

Copyright (c) 2000, 2022, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 
 

root 계정 비밀번호 설정

root 계정 비밀번호 설정합니다.

$ mysql_secure_installation

Securing the MySQL server deployment.

Connecting to MySQL using a blank password.

VALIDATE PASSWORD COMPONENT can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD component?

Press y|Y for Yes, any other key for No:
 

설정파일 my.cnf

mysql 설정파일 my.cnf의 위치는 다음과 같습니다.

  • /usr/local/Cellar/mysql/8.0.30_1/.bottle/etc/my.cnf
$ cat my.cnf 
# Default Homebrew MySQL server config
[mysqld]
# Only allow connections from localhost
bind-address = 127.0.0.1
mysqlx-bind-address = 127.0.0.1
 

DB 생성 및 User 생성

DB 생성

mysql> create database db_name;
 

사용자 생성

mysql> create user user_name@localhost identified by 'password';
mysql> create user user_name@'%' identified by 'password';
mysql> grant all privileges on db_name.* to user_name@localhost;
mysql> grant all privileges on db_name.* to user_name@'%';

## 부여된 권한 확인
mysql> show grants for user_name@localhost;
mysql> show grants for user_name@'%';

## 권한 삭제
mysql> revoke all on dbname.table from userid@host
## 권한 조회
mysql> show grants for userid@host

flush privileges;



mysql> create user oozie@localhost identified by 'user';
mysql> grant all privileges on user.* to user@localhost;
mysql> grant all privileges on user.* to user@'%';
mysql> grant all privileges on airflow.* to user@localhost;
mysql> grant all privileges on airflow.* to user@'%';
 

 

감사합니다.

 

728x90
반응형