서버 설치 · 4 min read · Nov 07, 2025
우분투 22.04에 Memcached 설치하는 방법

Memcached는 데이터베이스 데이터를 캐시하는 데 사용되는 무료, 오픈 소스, 일반 목적의 분산 메모리 캐싱 시스템입니다. 이는 데이터베이스 부하를 줄여 동적 웹 애플리케이션의 속도를 높이는 데 사용되는 고성능 메모리 캐싱 시스템입니다. Memcached는 클라이언트와 서버가 함께 작업하여 캐시된 데이터를 가능한 한 효율적으로 제공할 수 있도록 하는 네 가지 구성 요소로 구성되어 있습니다. PHP, Java, C/C++, Python, Ruby, Perl 등과 같은 주요 언어에 대한 API 통합을 제공합니다.
이 튜토리얼에서는 우분투 22.04 서버에 Memcached 서버를 설치하고 PHP와 함께 사용하는 방법을 보여줍니다.
요구 사항
- 우분투 22.04를 실행하는 서버.
- 서버에 루트 비밀번호가 설정되어 있어야 합니다.
우분투 22.04에 Memcached 설치하기
기본적으로 Memcached 패키지는 우분투 기본 저장소에 포함되어 있습니다. 다음 명령어를 사용하여 쉽게 설치할 수 있습니다:
apt install memcached libmemcached-tools -yMemcached가 설치되면 다음 명령어를 사용하여 Memcached 서비스를 시작합니다:
systemctl start memcached다음 명령어를 사용하여 Memcached의 상태를 확인할 수 있습니다:
systemctl status memcached다음과 같은 출력을 얻어야 합니다:
? memcached.service - memcached daemon
Loaded: loaded (/lib/systemd/system/memcached.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2022-10-18 13:09:47 UTC; 29s ago
Docs: man:memcached(1)
Main PID: 5525 (memcached)
Tasks: 10 (limit: 2242)
Memory: 1.7M
CPU: 71ms
CGroup: /system.slice/memcached.service
??5525 /usr/bin/memcached -m 64 -p 11211 -u memcache -l 127.0.0.1 -P /var/run/memcached/memcached.pid
Oct 18 13:09:47 ubuntu2204 systemd[1]: Started memcached daemon.
Memcached 버전을 확인하려면 다음 명령어를 실행합니다:
memcached -V다음과 같은 출력을 얻어야 합니다:
memcached 1.6.14기본적으로 Memcached는 포트 11211에서 수신 대기합니다. 다음 명령어로 확인할 수 있습니다:
ss -plunt | grep memcache다음과 같은 출력을 볼 수 있어야 합니다:
tcp LISTEN 0 1024 127.0.0.1:11211 0.0.0.0:* users:(("memcached",pid=5525,fd=22)) PHP Memcached 확장 설치하기
PHP 기반 애플리케이션에서 Memcached를 사용하려면 서버에 PHP Memcached 확장을 설치해야 합니다. 다음 명령어를 사용하여 Apache와 함께 설치할 수 있습니다:
apt install apache2 php libapache2-mod-php php-memcached php-cli -y다음으로, Memcached를 확인하기 위해 샘플 PHP 테스트 페이지를 생성합니다:
nano /var/www/html/info.php다음 코드를 추가합니다:
파일을 저장하고 닫은 후, 변경 사항을 적용하기 위해 Apache 서비스를 재시작합니다:
systemctl restart apache2다음으로, 웹 브라우저를 열고 URL http://your-server-ip/info.php를 사용하여 PHP 페이지에 접근합니다. 다음 화면에서 Memcached를 확인할 수 있어야 합니다:

다음으로, Memcached가 작동하는지 확인하기 위해 또 다른 PHP 테스트 페이지를 생성합니다.
nano /var/www/html/test.php다음 코드를 추가합니다:
addServer("127.0.0.1", 11211);
$response = $memcached->get("key_cache");
if($response==true)
{
echo "캐시에서 가져온 결과";
echo $response;
}
else
{
echo "캐시가 아직 생성되지 않았습니다. 변경 사항을 보려면 다시 로드하세요";
$memcached->set("key_cache", "우와! Memcache가 이제 작동합니다 ...") ;
}
}
catch (exception $e)
{
echo $e->getMessage();
}
?>파일을 저장하고 닫은 후, 웹 브라우저를 열고 URL http://your-server-ip/test.php를 사용하여 PHP 테스트 페이지에 접근합니다. 다음 화면을 볼 수 있어야 합니다:

다음으로, 페이지를 다시 로드합니다. 이번에는 페이지가 캐시 메모리에서 로드됩니다:

인증으로 Memcached 보안 강화하기
사용자 기반 인증으로 Memcached를 보호하기 위해 간단한 인증 및 보안 계층(SASL)을 사용하는 것이 좋습니다. 이를 위해 서버에 sasl2-bin 패키지를 설치해야 합니다.
apt install sasl2-bin다음으로, SASL 인증을 위한 디렉토리 및 구성 파일을 생성합니다:
mkdir -p /etc/sasl2
nano /etc/sasl2/memcached.conf다음 줄을 추가합니다:
log_level: 5
mech_list: plain
sasldb_path: /etc/sasl2/memcached-sasldb2파일을 저장하고 닫은 후, 사용자 자격 증명을 사용하여 SASL 데이터베이스를 생성합니다:
saslpasswd2 -a memcached -c -f /etc/sasl2/memcached-sasldb2 user1다음과 같이 비밀번호를 설정합니다:
Password:
Again (for verification): 다음으로, Memcached 데이터베이스의 소유권을 변경합니다:
chown memcache:memcache /etc/sasl2/memcached-sasldb2다음으로, 다음 명령어를 사용하여 Memcached를 확인합니다:
memcstat --servers="127.0.0.1"다음과 같은 출력을 얻어야 합니다:
Server: 127.0.0.1 (11211)
pid: 5525
uptime: 462
time: 1666099048
version: 1.6.14
libevent: 2.1.12-stable
pointer_size: 64
rusage_user: 0.110123
rusage_system: 0.093906
max_connections: 1024
curr_connections: 1
total_connections: 4
rejected_connections: 0
connection_structures: 2
response_obj_oom: 0
response_obj_count: 1
response_obj_bytes: 49152
read_buf_count: 6
read_buf_bytes: 98304
read_buf_bytes_free: 32768
read_buf_oom: 0
reserved_fds: 20
cmd_get: 2
cmd_set: 1
cmd_flush: 0
cmd_touch: 0
cmd_meta: 0
get_hits: 1
get_misses: 1
get_expired: 0
get_flushed: 0
delete_misses: 0다음으로, Memcached 구성 파일을 편집합니다:
nano /etc/memcached.conf다음 줄을 추가합니다:
-S
-vv파일을 저장하고 닫은 후, 변경 사항을 적용하기 위해 Memcached 서비스를 재시작합니다:
systemctl restart memcached다음으로, 다음 명령어를 사용하여 SASL 지원을 확인합니다:
journalctl -u memcached |grep SASL모든 것이 정상이라면 다음과 같은 출력을 얻을 수 있습니다:
Journal file /var/log/journal/d97e195db6584d63aeedfdc35dc83c7f/user-1000.journal is truncated, ignoring file.
Oct 18 13:18:19 ubuntu2204 systemd-memcached-wrapper[14980]: Initialized SASL.Memcached 인증 확인하기
먼저, 인증 없이 Memcached에 대한 연결을 다시 확인해 보십시오:
memcstat --servers="127.0.0.1"명령어는 출력을 생성하지 않아야 합니다. 상태를 확인하기 위해 다음 셸 명령어를 입력합니다:
echo $?다음과 같은 상태 코드를 수신해야 하며, 이는 memcstat 명령이 실패했음을 의미합니다:
1다음으로, 사용자 이름과 비밀번호를 지정하여 Memcached 명령을 다시 실행합니다:
memcstat --servers="127.0.0.1" --username=user1 --password=password다음과 같은 출력을 얻을 수 있습니다:
Server: 127.0.0.1 (11211)
pid: 14980
uptime: 46
time: 1666099143
version: 1.6.14
libevent: 2.1.12-stable
pointer_size: 64
rusage_user: 0.077843
rusage_system: 0.049072
max_connections: 1024
curr_connections: 1
total_connections: 3
rejected_connections: 0
connection_structures: 2
response_obj_oom: 0
response_obj_count: 1
response_obj_bytes: 16384
read_buf_count: 3
read_buf_bytes: 49152
read_buf_bytes_free: 16384
read_buf_oom: 0Python용 Memcached 설치하기
Python 기반 웹 애플리케이션과 Memcached를 통합하려면 Python용 Memcached 확장을 설치해야 합니다. 다음 명령어를 사용하여 설치할 수 있습니다:
apt install python3-pip
pip install pymemcache
pip install python-memcached결론
이 게시물에서는 우분투 22.04에 Memcached 서버를 설치하는 방법을 설명했습니다. 또한 SASL 기반 인증으로 Memcached를 보호하는 방법도 설명했습니다. 이제 Memcached를 애플리케이션과 통합하여 애플리케이션 성능을 향상시킬 수 있기를 바랍니다. 질문이 있으면 언제든지 문의해 주세요.
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.