>  기사  >  데이터 베이스  >  centos7에서 mysql을 컴파일하고 설치하는 방법

centos7에서 mysql을 컴파일하고 설치하는 방법

藏色散人
藏色散人원래의
2021-12-28 10:06:193399검색

centos7에서 mysql을 컴파일하고 설치하는 방법: 1. 종속성 패키지를 설치합니다. 2. 해당 소스 코드 패키지를 다운로드합니다. 3. 다운로드한 mysql을 "/usr/local/mysql" 디렉터리에 추출합니다. 4. "/etc"를 편집합니다. /my .cnf"; 5. mysql을 초기화합니다. 6. mysql을 시작합니다.

centos7에서 mysql을 컴파일하고 설치하는 방법


이 기사의 운영 환경: centos7 시스템, mysql 버전 5.7, Dell G3 컴퓨터.

centos7에서 mysql을 어떻게 컴파일하고 설치하나요?

centos7 소스 코드 컴파일 및 mysql5.7 설치

과거에는 다른 이유 없이 mysql5.7의 소스 코드 컴파일 및 설치가 가장 짜증났습니다. 매우 번거롭지만 최근에는 학습 요구로 인해 피할 수 없습니다. 주로 Centos7 아래의 소스 코드에서 컴파일 및 설치 mysql5.7에 도입됩니다.

환경: MiniCentos7 (다운로드 주소: https://www.centos.org/download/ )

Installation

종속성 패키지 설치

yum install -y  gcc gcc-c++ cmake ncurses ncurses-devel bison

해당 소스 코드 패키지 다운로드
Mysql5.7 컴파일 및 설치에는 부스트 라이브러리가 필요합니다. , 여기 공식 웹사이트에서 다운로드하십시오. Boost가 포함된 소스 패키지

centos7에서 mysql을 컴파일하고 설치하는 방법
다운로드 주소는 여기에 제공됩니다

https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-boost-5.7.25.tar.gz

사용자 추가

useradd -s /sbin/nologin mysql

필요한 디렉터리를 생성하고 소유자를 mysql

mkdir -p /data/mysql/data
chown -R mysql:mysql /data/mysql
로 변경합니다.

다운로드한 mysql을 / usr/local/mysql 디렉토리

tar -zxvf mysql-boost-5.7.25.tar.gz -C /usr/local/mysql/

/usr/local/mysql 디렉토리로 전환하고 컴파일 및 설치

cmake -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_BOOST=boost

centos7에서 mysql을 컴파일하고 설치하는 방법

make && make install

centos7에서 mysql을 컴파일하고 설치하는 방법
설치된 /usr/local/mysql 디렉토리 구조
centos7에서 mysql을 컴파일하고 설치하는 방법

Configuration

Edit /etc/my.cnf (없으면 생성하세요)
제가 설정한 파일의 내용은 다음과 같습니다

[client]
port        = 3306
socket      = /tmp/mysql.sock

[mysqld]
port        = 3306
socket      = /tmp/mysql.sock
user = mysql


basedir = /usr/local/mysql
datadir = /data/mysql/data
pid-file = /data/mysql/mysql.pid

log_error = /data/mysql/mysql-error.log
slow_query_log = 1
long_query_time = 1
slow_query_log_file = /data/mysql/mysql-slow.log


skip-external-locking
key_buffer_size = 32M
max_allowed_packet = 1024M
table_open_cache = 128
sort_buffer_size = 768K
net_buffer_length = 8K
read_buffer_size = 768K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
thread_cache_size = 16
query_cache_size = 16M
tmp_table_size = 32M
performance_schema_max_table_instances = 1000

explicit_defaults_for_timestamp = true
#skip-networking
max_connections = 500
max_connect_errors = 100
open_files_limit = 65535

log_bin=mysql-bin
binlog_format=mixed
server_id   = 232
expire_logs_days = 10
early-plugin-load = ""

default_storage_engine = InnoDB
innodb_file_per_table = 1
innodb_buffer_pool_size = 128M
innodb_log_file_size = 32M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash

[myisamchk]
key_buffer_size = 32M
sort_buffer_size = 768K
read_buffer = 2M
write_buffer = 2M

위의 설정 내용은 꼭 필요한 내용은 아니며 실제 상황에 따라 적절히 조정하시면 됩니다!

설치 디렉터리 사용자 및 그룹을 mysql

chown -R mysql:mysql mysql
로 변경하세요

데이터베이스 데이터 디렉터리 사용자 및 그룹을 mysql(데이터베이스 데이터 디렉터리: /data/mysql/data)로 변경하세요. 방법은 위와 동일합니다!
참고: / data/mysql/data 디렉터리는 비어 있어야 합니다

Initialize mysql

./mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/data

참고: 이 단계에서는 잘못되기 쉽습니다. 초기화 중에 위의 매개변수를 추가해야 하며, 이 단계를 수행하기 전에 /data/mysql/을 추가해야 합니다. . 데이터 디렉터리는 비어 있어야 합니다. 여기에 지정된 basedir 및 datadir 디렉터리는 /etc/my.cnf에 구성된 디렉터리와 일치해야 합니다.

실행 가능한 구성 파일을 복사하세요

cp mysql.server /etc/init.d/mysqld

centos7에서 mysql을 컴파일하고 설치하는 방법

참고: 일부 네티즌 기사에서는 이 단계에서 my-default.cnf를 /usr/local/mysql/support-files 디렉터리에서 /etc/로 복사하는 내용을 쓸 것입니다. my.cnf 구성 파일이 있는데 여기에는 이 파일이 없으므로 구성 프로세스에서 직접 my.cnf 파일을 구성했습니다.

Startup

service mysqld start

centos7에서 mysql을 컴파일하고 설치하는 방법

참고: 이 단계에서도 문제가 쉽게 발생할 수 있습니다. 여기서 문제가 발생하면 당황하지 마세요. 일반적으로 mysql 오류 로그의 내용을 보면 괜찮습니다. 문제 해결을 위한 mysql 오류 로그 프롬프트.

연결 테스트

./mysql -hlocalhost -uroot -p

centos7에서 mysql을 컴파일하고 설치하는 방법

비밀번호 없이 성공적으로 연결할 수 있습니다

환경 변수 수정
/etc/profile에 새 줄 추가

PATH=/usr/local/mysql/bin:$PATH

저장 및 종료

source /etc/profile

부팅 시 자동 시작 설정

systemctl enable mysqld

centos7에서 mysql을 컴파일하고 설치하는 방법

추천 학습: "mysql 비디오 튜토리얼"

위 내용은 centos7에서 mysql을 컴파일하고 설치하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.