본문 바로가기

Ubuntu

Ubuntu 18.04에 Mysql 5.7.34 설치하기

글 쓰는 배경

2021년 7월 기준, Ubuntu 18.04 는 apt install mysql-server를 수행하면 mysql 5.7.35를 설치합니다. 그런데 필자는 mysql 5.7.34를 설치해야 하는 상황입니다. 시스템에 있는 기본 저장소에서는 mysql 5.7.34를 제공해 주지 않기 때문에, Google Search를 하여 해결한 과정을 남겨 놓습니다. 

salsal@mysql:~$ sudo apt-cache policy mysql-server
mysql-server:
  Installed: (none)
  Candidate: 5.7.35-0ubuntu0.18.04.1
  Version table:
     5.7.35-0ubuntu0.18.04.1 500
        500 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages
        500 http://kr.archive.ubuntu.com/ubuntu bionic-updates/main i386 Packages
        500 http://security.ubuntu.com/ubuntu bionic-security/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu bionic-security/main i386 Packages
     5.7.21-1ubuntu1 500
        500 http://kr.archive.ubuntu.com/ubuntu bionic/main amd64 Packages
        500 http://kr.archive.ubuntu.com/ubuntu bionic/main i386 Packages

 

기본환경

Ubuntu 18.04 에서 설치합니다. 

salsal@mysql:~$ lsb_release -a
Distributor ID: Ubuntu
Description: Ubuntu 18.04.5 LTS
Release: 18.04
Codename: bionic

 

과정

mysql 5.7.34 다운로드

 

mysql 5.7.34 package를 제공하는 곳에서 가져와야 합니다. mysql package를 제공하는 곳을 검색하여 https://downloads.mysql.com/archives/community/ 를 알아냈습니다. 여기에서 Product Version과 OS를 선택합니다. 

 

downloads.mysql.com

 

mysql은 몇개 package를 함께 설치해야 하므로 Bundle 파일 mysql-server_5.7.34-1ubuntu18.04_amd64.deb-bundle.tar 을 wget을 이용해 다운로드 합니다. 약 150MB 파일을 1분안에 다운로드 합니다. 그리고 tar xvf를 이용하여 파일을 풀어 냅니다.

salsal@mysql:~/Downloads$ wget https://downloads.mysql.com/archives/get/p/23/file/mysql-server_5.7.34-1ubuntu18.04_amd64.deb-bundle.tar



salsal@mysql:~/Downloads$ tar xvf mysql-server_5.7.34-1ubuntu18.04_amd64.deb-bundle.tar 
libmysqlclient-dev_5.7.34-1ubuntu18.04_amd64.deb
libmysqlclient20_5.7.34-1ubuntu18.04_amd64.deb
libmysqld-dev_5.7.34-1ubuntu18.04_amd64.deb
mysql-client_5.7.34-1ubuntu18.04_amd64.deb
mysql-common_5.7.34-1ubuntu18.04_amd64.deb
mysql-community-client_5.7.34-1ubuntu18.04_amd64.deb
mysql-community-server_5.7.34-1ubuntu18.04_amd64.deb
mysql-community-source_5.7.34-1ubuntu18.04_amd64.deb
mysql-community-test_5.7.34-1ubuntu18.04_amd64.deb
mysql-server_5.7.34-1ubuntu18.04_amd64.deb
mysql-testsuite_5.7.34-1ubuntu18.04_amd64.deb

 

apt install로 deb 파일 설치하기

 

그리고 package 1개씩 설치합니다. 아래 순서대로 설치하는 것을 추천합니다. mysql-community-server_5.7.34-1ubuntu18.04_amd64.deb 를 설치할 때 mysql에서 사용하는 비밀번호를 입력하니 기억하고 있어야 합니다. 

salsal@mysql:~/Downloads$ sudo apt install -f ./mysql-common_5.7.34-1ubuntu18.04_amd64.deb 

salsal@mysql:~/Downloads$ sudo apt install -f ./mysql-community-client_5.7.34-1ubuntu18.04_amd64.deb 

salsal@mysql:~/Downloads$ sudo apt install -f ./mysql-client_5.7.34-1ubuntu18.04_amd64.deb 

salsal@mysql:~/Downloads$ sudo apt install -f ./mysql-community-server_5.7.34-1ubuntu18.04_amd64.deb 

salsal@mysql:~/Downloads$ sudo apt install -f ./mysql-server_5.7.34-1ubuntu18.04_amd64.deb 



salsal@mysql:~/Downloads$ sudo apt install -f ./libmysqlclient20_5.7.34-1ubuntu18.04_amd64.deb 

salsal@mysql:~/Downloads$ sudo apt install -f ./libmysqlclient-dev_5.7.34-1ubuntu18.04_amd64.deb 

salsal@mysql:~/Downloads$ sudo apt install -f ./libmysqld-dev_5.7.34-1ubuntu18.04_amd64.deb

 

 

상태확인 및 재실행하기

 

설치를 하고 나서 아래와 같이 상태를 확인하면 mysql이 실행중인 것을 알 수 있습니다. 

salsal@mysql:~/Downloads$ sudo systemctl status mysql
● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2021-07-28 20:34:27 KST; 4min 15s ago
 Main PID: 3727 (mysqld)
    Tasks: 27 (limit: 4664)
   CGroup: /system.slice/mysql.service
           └─3727 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid

 

mysql을 중지하고 재실행합니다. 

salsal@mysql:~/Downloads$ sudo systemctl stop mysql
salsal@mysql:~/Downloads$ sudo systemctl start mysql
salsal@mysql:~/Downloads$ sudo systemctl status mysql
● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2021-07-28 20:39:17 KST; 2s ago
  Process: 5946 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid (code=exited, status=0/S
  Process: 5907 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
 Main PID: 5948 (mysqld)
    Tasks: 27 (limit: 4664)
   CGroup: /system.slice/mysql.service
           └─5948 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid

 7월 28 20:39:17 mysql systemd[1]: Starting MySQL Community Server...
 7월 28 20:39:17 mysql systemd[1]: Started MySQL Community Server.

 

버전 확인, mysql 로그인하여 확인하기

 

버전을 확인합니다. 5.7.34 라는 것을 알 수 있습니다. 

salsal@mysql:~/Downloads$ mysql -V
mysql  Ver 14.14 Distrib 5.7.34, for Linux (x86_64) using  EditLine wrapper

 

mysql client를 실행하여 직접 상태를 살펴 봅니다. 

salsal@mysql:~/Downloads$ sudo mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.34 MySQL Community Server (GPL)

Copyright (c) 2000, 2021, 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> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

mysql>