blog

루오이 백엔드 관리 시스템 배포-2- mysql 설치하기

CENTOS7 MYSQL 설치 1. 수동 설치 설치 먼저 시스템이 설치되어 있는지 확인합니다: 포함된 마리아드비를 제거합니다: 공식 웹사이트로 이동하여 MYSQL 설치 패키지를 다...

Oct 19, 2025 · 6 min. read
シェア

centos7 mysql 설치

수동 설치

설치

먼저 시스템이 설치되어 있는지 확인합니다:

rpm -qa|grep mariadb
rpm -qa | grep mysql
systemctl status mysqld
find / -name mysqlf

자체 마리애드비를 제거합니다.

rpm -e mariadb-libs-5.5.68-1.el7.x86_64 --nodeps

공식 웹 사이트로 이동하여 mysql 설치 패키지를 다운로드하십시오 : 공식 웹 사이트로 이동하여 rpm 패키지를 다운로드하고, centos는 빨간 모자를 선택하십시오 : 서버에 업로드하고 압축을 풉니 다.

# -xvf로 tar의 압축을 풉니다..tar.gz zxvf 사용
tar -xvf mysql-5.7.44-1.el7.x86_64.rpm-bundle.tar

패키지를 순서대로 설치합니다:

rpm -ivh mysql-community-common-5.7.44-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.44-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.44-1.el7.x86_64.rpm
yum install libaio-devel
rpm -ivh mysql-community-server-5.7.44-1.el7.x86_64.rpm

centos7 설치 mysql 오류: mysql-community-server-5.7.44-1.el7.x86_64에 libaio.so.1()(64비트) 필요: yum install libaio-devel 설치 필요

데이터베이스를 초기화합니다:

mysqld --initialize 

초기화할 때 비밀번호를 확인하기 위해 임의의 비밀번호가 생성됩니다:

cat /var/log/mysqld.log | grep 'password'

mysql 데이터베이스 디렉터리의 사용자 및 해당 그룹을 변경한 다음 mysql 데이터베이스: 를 시작합니다.

chown mysql:mysql /var/lib/mysql -R
systemctl start mysqld.service
# 데이터베이스 런타임 상태 보기
systemctl status mysqld.service

mysql에 연결합니다.

mysql -uroot -p
#비밀번호 입력
#비밀번호 재설정하기
set password=password('root');
#사용자 만들기 및 권한 할당하기:
create user 'root'@'%' identified by 'root'; 
SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
flush privileges;
exit

설정은 대소문자를 구분하지 않습니다:

lower_case_table_names = 1

restart sth.

systemctl restart mysqld
systemctl status mysqld

제거하기

설치 제거는 설치 순서의 역순으로 진행됩니다:

yum 설치

  1. MySQL 소스 설치 관리자 다운로드
wget http://..com/get/mysql57-community-release-el7-..rpm
  1. msyql 소스 설치
yum localinstall mysql57-community-release-el7-8.noarch.rpm
  1. MySQL 소스가 성공적으로 설치되었는지 확인
yum repolist enabled | grep "mysql.*-community.*"

  1. 설치
# 첫 번째 단계를 수행하지 않으면 다음 이미지와 같이 오류가 보고됩니다.
rpm --import https://..com/RPM-GPG-KEY-mysql-2022
yum install mysql-community-server

5. 시작

systemctl start mysqld
# 상태 보기
systemctl status mysqld
# 부팅 설정
systemctl enable mysqld
systemctl daemon-reload
  1. 초기화 수동 설치의 경우 위의 단계를 따르세요.
grep 'temporary password' /var/log/mysqld.log

반환되지 않으면 루트 비밀번호를 찾을 수 없는 것입니다:

# 1원래 설치된 mysql에서 잔여 데이터 삭제하기
rm -rf /var/lib/mysql
# 2 mysqld 서비스 다시 시작하기
systemctl restart mysqld
# 3 임시 비밀번호 다시 받기
grep 'temporary password' /var/log/mysqld.log
  1. mysql 보안 구성
mysql_secure_installation
cp /etc/myf /etc/myf.bak
vi /etc/myf.bak
# 파일 끝에
validate_password = off	
# 서비스 다시 시작하기
systemctl restart mysqld

원격으로 액세스할 수 있는 사용자를 만들 때 로컬로만 액세스할 수 있는 Mysql의 루트 사용자입니다.

GRANT ALL PRIVILEGES ON *.* TO 'ruoyi'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
flush privileges;

관련 명령:

# 모든 사용자 보기, mysql에 루트로 로그인하기
SELECT DISTINCT CONCAT('User: ''', user, '''@''', host, ''';') AS query FROM mysql.user;
## 권한 추가하기
GRANT ALL PRIVILEGES ON *.* TO 'username'@ % ;
FLUSH PRIVILEGES;
# 사용자 권한 보기
SHOW GRANTS FOR '사용자명'@'%';
# 사용자 삭제하기
DROP USER '사용자명'@'%';
# 권한 해지하기
REVOKE ALL PRIVILEGES ON *.* FROM 'username'@ % ;
FLUSH PRIVILEGES;
  1. 대소문자 무시 mysql에 로그인하여 확인합니다.
mysql> show variables like "%case%";
+------------------------+-------+
| Variable_name | Value |
+------------------------+-------+
| lower_case_file_system | OFF |
| lower_case_table_names | 0 | ##0구분 1 구분 없음
+------------------------+-------+
2 rows in set (0.00 sec)
# 00: 대소문자 구분, 1: 대소문자 구분 안 함
lower_case_table_names =1

서비스를 다시 시작하여 적용합니다:

systemctl restart mysqld

일반적인 오류:

  1. 이는 엄격한 모드에서 '0000-00-00'을 법적 날짜로 허용하지 않는 sql_mode의 NO_ZEROR_DATE로 인한 것입니다:
show variables like 'sql_mode';
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

mysql 설치 정보를 확인합니다.

rpm -ql mysql-community-server
rpm -qc mysql-community-server
rpm -qi mysql-community-server
  • -ql은 패키지가 설치한 모든 파일을 나열하는 데 사용됩니다.
  • -qc는 파일과 디렉터리를 나열하여 패키지의 내용을 확인하는 데 사용됩니다.
  • -qi 패키지 세부 정보를 가져오는 데 사용됩니다.
[client]
default-character-set=utf8
[mysql]
# 기본 문자 집합 구성하기
default-character-set=utf8
 
[mysqld]
# 문자 집합 및 정렬 구성하기
character-set-server=utf8
collation-server=utf8_general_ci

표준 시간대를 설정합니다:

[mysqld]
default-time_zone='+8:00'

MySQL 5.7 구성 파일 myf에서 [client], [mysql], [mysqld]는 각각 클라이언트 연결 파라미터, MySQL 클라이언트 파라미터, MySQL 서버 파라미터를 구성하는 데 사용되는 세 가지 구성 섹션입니다. 각 섹션의 기능은 다음과 같습니다:

  1. [클라이언트] 이 섹션에는 MySQL 서버에 연결할 때 클라이언트에서 사용하는 매개변수가 포함되어 있습니다. 이러한 매개변수는 클라이언트가 서버와 상호 작용하는 방식에 영향을 줍니다. 예를 들어 포트는 클라이언트가 연결하는 포트를 지정하고 소켓은 클라이언트에서 사용하는 Unix 도메인 소켓 파일의 위치를 지정합니다.
  2. [mysql] 이 섹션에는 MySQL 클라이언트 라이브러리에 대한 매개변수가 포함되어 있습니다. 이러한 매개변수는 MySQL 클라이언트 프로그램의 동작에 영향을 줍니다. 예를 들어 prompt는 MySQL 클라이언트 프롬프트의 형식을 정의합니다.
  3. [mysqld] 이 섹션에는 MySQL 서버 매개변수가 포함되어 있습니다. 이러한 매개변수는 연결, 데이터 저장, 로깅, 보안 설정 등을 처리하는 방법을 포함하여 서버가 작동하는 방식을 정의합니다. 예를 들어 port는 서버가 수신 대기하는 포트를 지정하고, basedir 및 datadir는 서버의 설치 디렉터리 및 데이터 디렉터리를 지정하며, log-error는 오류 로깅을 위한 파일 경로를 지정합니다. 일반적으로 myf 파일에는 이 세 가지 섹션이 포함되지만 [mysql] 섹션은 선택 사항이므로 경우에 따라 존재하지 않을 수 있습니다. mysql] 섹션이 없는 경우 관련 파라미터를 [client] 또는 [mysqld] 섹션에 배치하거나 명령줄에 직접 지정할 수 있습니다. myf 파일을 수정할 때는 주의를 기울여야 합니다:
  • 각 섹션은 대괄호로 시작하여 닫힌 대괄호로 끝납니다.
  • 섹션 내의 구성 항목은 키 뒤에 등호가 오고 매개변수 값이 오는 키-값 쌍과 같은 형식을 따릅니다.
  • 구성 파일의 경로는 절대 경로를 사용하거나 클라이언트가 연결할 때 상대 경로를 지정해야 합니다.
  • 일부 매개변수는 한 번에 두 개 이상의 섹션에 지정할 수 있지만 서로 다른 섹션에 지정된 매개변수가 서로 재정의될 수 있습니다. MySQL 서버의 보안, 성능 및 안정성을 보장하려면 myf 파일을 올바르게 구성하는 것이 필수적입니다.
Read next

프로테오믹스 시퀀싱 기술: 프로테옴의 복잡성과 기능 밝혀내기

단백질은 생명체에서 가장 기본적인 기능 분자로서 조절, 촉매, 구조적 지지 등 다양한 중요한 역할을 수행합니다. 다양한 조건에서 프로테옴의 구성과 발현 변화를 이해하는 것은 생물학적 시스템의 기능과 질병 메커니즘을 심층적으로 이해하는 데 매우 중요합니다. 프로테오믹스 시퀀싱 기술은 프로테옴의 복잡성을 분석하는 도구로서 프로테옴을 이해하는 데 중요한 도구입니다.

Oct 19, 2025 · 3 min read