// 우분투 서버 업데이트 및 mysql-server 설치
$sudo apt-get update
$sudo apt-get install mysql-server
// mysql 기본 설치
$sudo ufw allow mysql // 외부 접속 기능 설정 (포트 3306 오픈)
$sudo systemctl start mysql // mysql 실행
$sudo systemctl enable mysql // 우분투 서버 재시작시 mysql 자동 재시작
// mysql 서비스 실행 확인
service --status-all
// mysql 서비스 실행
service mysql start
// mysql 접속 (비번은 우분투 비번과 동일)
$sudo /usr/bin/mysql -u root -p
// mysql 버전 확인
show variables like "%version%";
// mysql 비번 변경
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('바꿀비번');
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '바꿀비번';
// 사용자 정보 확인
SELECT User, Host, authentication_string FROM mysql.user;
// test 라는 데이터베이스 만들고 확인
mysql> CREATE DATABASE test;
mysql> SHOW DATABASES;
// tiger 라는 계정 만들기
mysql> CREATE USER 'tiger'@'localhost' IDENTIFIED BY 'mysql비번';
mysql> FLUSH PRIVILEGES;
mysql> SELECT User, Host, authentication_string FROM mysql.user;
// tiger 계정에 test 데이터베이스 권한 부여
mysql> GRANT ALL PRIVILEGES ON test.* FOR'tiger'@'localhost';
mysql> FLUSH PRIVILEGES;
mysql> SHOW GRANTS FOR'tiger'@'localhost';
mysql> SELECT User, Host, authentication_string FROM mysql.user;
// 아래 내용은 selinux가 적용된 상태에서 mysql가 정상적으로 서비스되지 않았던 부분에 대한 기록
// selinux를 비활성화한 후, reboot하면 mysql은 정상적으로 동작함.
service --status-all
-> mysql 실행상태 (-) 로 확인
service mysql start
-> (root계정으로 전환 후) mysql 실행
-> 아래와 같은 에러메세지 출력
Job for mysql.service failed because the control process exited with error code.
See "systemctl status mysql.service" and "journalctl -xe" for details.
systemctl status mysql.service
-> 아래와 같은 상태 확인(원인 확인 불가)
● mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
Active: activating (start) since Wed 2023-06-28 12:51:36 KST; 3s ago
Process: 3101750 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
Main PID: 3101758 (mysqld)
Status: "Server startup in progress"
Error: 13 (Permission denied)
Tasks: 5 (limit: 19083)
Memory: 375.9M
CGroup: /system.slice/mysql.service
└─3101758 /usr/sbin/mysqld
systemctl start mysqld
-> 아래와 같은 메세지 출력
Failed to start mysqld.service: Unit mysqld.service not found.
/var/run/mysqld 디렉토리 내에 mysqld.service 파일 부존재
/var/log/mysqld.log 파일 부존재 (mysqlq 에러 로그 확인을 위함)
'IT Infra' 카테고리의 다른 글
멀티 테넌트 (Multi Tenant), 멀티 테넌시(Multi Tenancy) (0) | 2023.08.03 |
---|---|
[Ubuntu] Apparmor 활성화 (0) | 2023.06.28 |
[Docker] docker run vs. docker start (0) | 2023.06.28 |
[Docker] 기초정리 (2) (0) | 2023.06.16 |
[Docker] command 입력방법 (0) | 2023.06.16 |