CentOS 시스템에서 MySQL5.1을 5.5.36으로 업그레이드하는 방법에 대한 자세한 예

黄舟
풀어 주다: 2017-07-17 14:34:23
원래의
1387명이 탐색했습니다.

MySQL 성능이 5.1에서 5.5+로 크게 향상된다는 관련 테스트 데이터가 있습니다. 구체적으로 이를 연습하려면 테스트 환경을 설정하고 업그레이드의 구체적인 단계를 기록해 보겠습니다. CentOS 6.4 환경에서 MySQL 5.1을 5.5.36으로 업그레이드하는 과정에 있는 모든 분들에게 참고가 되기를 바랍니다.

1. 안전상의 이유로 먼저 원본 데이터를 백업해야 합니다

2. 원본 MySQL을 제거하고 먼저 원본 MySQL 서비스를 중지한 다음 / -name mysql

[root@linuxidc /]# find / -name mysql

/var/lib/mysql

/var/lib/mysql/mysql

/usr/lib64/mysql
로그인 후 복사

을 검색하여 서비스를 제거합니다

[root@linuxidc /]# rm -rf /var/lib/mysql

[root@linuxidc /]# rm -rf /var/lib/mysql

[root@linuxidc /]# rm -rf /usr/lib64/mysql
로그인 후 복사

3. cmake

[root@linuxidc download]# wget http://www.cmake.org/files/v2.8/cmake-2.8.12.2.tar.gz

[root@linuxidc download]# tarx zvfc cmake-2.8.12.2.tar.gz

[root@linuxidc download]# cd cmake-2.8.12.2

[root@linuxidc cmake-2.8.12.2]# ./configure

[root@linuxidc cmake-2.8.12.2]# make && make install
로그인 후 복사

4를 다운로드하고 설치하세요. MySQL5.5.36

[root@linuxidc download]# wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.36.tar.gz

[root@linuxidc download]# tar xzvf mysql-5.5.36.tar.gz

[root@linuxidc download]# cd mysql-5.5.36

[root@linuxidc mysql-5.5.36]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/home/mysql

[root@linuxidc mysql-5.5.36]# make && make install
로그인 후 복사

cmake 프로세스 중에 오류가 발생하여 Could NOT find Curses(missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)

실행 후 cmake를 계속 실행하세요. , 그런 다음 make && make install

[root@localhost mysql-5.5.36]# rm CMakeCache.txt
[root@localhost mysql-5.5.36]# yum install ncurses-devel
로그인 후 복사

5 다음으로 이전에 백업한 my.cnf 파일을 /etc/my.cnf

MySQL에서 /etc/my.cnf /etc/mysql/로 복사해야 합니다. my.cnf /usr/local/mysql/etc/my.cnf /.my.cnf. 왼쪽

파일의 우선순위가 가장 높습니다

6. 구성 후 mysql을 시작했는데 문제가 발견되었습니다. MySQL 시작 메시지: PID 파일을 업데이트하지 않고 서버가 종료되었습니다(...). 실패

my.cnf를 확인하세요. 파일 설정 로그 파일 주소는 /var/log/mysqld.log이며, 오류 메시지는 다음과 같습니다

170715 12:31:36 mysqld_safe mysqld from pid file /var/lib/mysql/linuxidc.pid ended
170715 12:57:48 mysqld_safe Starting mysqld daemon with databases from /home/mysql
170715 12:57:48 InnoDB: The InnoDB memory heap is disabled
170715 12:57:48 InnoDB: Mutexes and rw_locks use GCC atomic builtins
170715 12:57:48 InnoDB: Compressed tables use zlib 1.2.3
170715 12:57:48 InnoDB: Initializing buffer pool, size = 128.0M
170715 12:57:48 InnoDB: Completed initialization of buffer pool
170715 12:57:48 InnoDB: highest supported file format is Barracuda.
170715 12:57:48  InnoDB: Waiting for the background threads to start
170715 12:57:49 InnoDB: 5.5.36 started; log sequence number 2645823
170715 12:57:49 [ERROR] /usr/local/mysql/bin/mysqld: unknown variable 'default-character-set=utf8'
170715 12:57:49 [ERROR] Aborting
로그인 후 복사

이 오류는 /etc/my.cnf

구성 파일

에 있는 [mysqld] 설정문자 집합으로 인해 발생합니다. 해결 방법: default-character-set=utf8을 Character_set_server=utf87로 변경합니다. mysql -u root -p 명령을 통해 mysql에 연결합니다. (이전에 mysql을 설치한 적이 있고 데이터베이스 파일이 아직 남아 있으므로

사용자를 추가

권한을 설정할 필요가 없습니다.)An

오류 메시지

가 나타났습니다: ERROR 2002(HY000): 로컬 MySQL에 연결할 수 없습니다. 소켓 '/tmp/mysql.sock'을 통해 서버를 연결하세요오류가 발생하는 이유는 mysql.sock 파일이 /usr/lib/mysql/ 폴더에 있기 때문입니다

다음 명령을 통해 연결을 시도하고 확인할 수 있습니다. mysql 버전

[root@linuxidc var]# mysql -u root -p -S /usr/lib/mysql/mysql.sock
mysql> select version();
+-----------+
| version() |
+-----------+
| 5.5.36    |
+-----------+
1 row in set (0.00 sec)
로그인 후 복사

위 내용은 CentOS 시스템에서 MySQL5.1을 5.5.36으로 업그레이드하는 방법에 대한 자세한 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿