현재 사이드 프로젝트 안에서 사용할 DB를 배포를 해야 했습니다. 그러기 위해선 nvm, mysql, pm2, node , yarn까지 전부 설치해야 했습니다. 수많은 시행착오 끝에 성공했기 때문에 이렇게 블로그를 작성해봅니다.
lsb_release -a <- 요 명령어를 입력해서 확인해보세요!
순서대로 진행하시면 mysql 5.7 버전을 설치할 수 있습니다.
$ wget https://dev.mysql.com/get/mysql-apt-config_0.8.12-1_all.deb
2.저장소 설치하기.
$ sudo dpkg -i mysql-apt-config_0.8.12-1_all.deb
이 명령어를 입력하면 분홍색 화면이 나옵니다. 당황하지 않고 abort를 누르시면 절!대! 안됩니다.
그러면 5.7버전 설치를 할 수가 없습니다...ㅠ
여기 나온 순서대로 선택 해주시면 되겠습니다.
1. Ubuntu Bionic 선택
2. MySQL & Server Cluster
3. mysql-5.7
4. ok!
이 때 비밀번호를 설정하게 되는데 원하는 비밀번호로 잘 설정하시길 바랍니다.
sudo apt update
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 467B942D3A79BD29
$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 467B942D3A79BD29
sudo apt update
$ sudo apt-cache policy mysql-server
아래와 같은 결과가 나올 것입니다.
mysql-server:
Installed: (none)
Candidate: 8.0.27-0ubuntu0.20.04.1
Version table:
8.0.27-0ubuntu0.20.04.1 500
500 http://us.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages
500 http://us.archive.ubuntu.com/ubuntu focal-security/main amd64 Packages
8.0.19-0ubuntu5 500
500 http://us.archive.ubuntu.com/ubuntu focal/main amd64 Packages
5.7.37-1ubuntu18.04 500
500 http://repo.mysql.com/apt/ubuntu bionic/mysql-5.7 amd64 Packages
$ sudo apt install -f mysql-client=5.7* mysql-community-server=5.7* mysql-server=5.7*
$ sudo mysql_secure_installation
보안설정을 시작하면 질문이 나옵니다.
이렇게 대답해주시면 됩니다.
1. Validate password plugin 사용하실껀가요?
저는 개발용 , 테스트용이기 때문에 N! 하지만 production 용이라면 사용하시는 것을 권장합니다.
2. root 비밀번호를 물으면 원하는 root 비밀번호를 동일하게 두 번 입력!
3. Anonymous user 삭제? Yes!
4. 외부에서 root 계정 접근 허용? No!
외부에서 root 계정을 접근 할 일은 거의 없습니다!
5. Test DB 삭제 ? Yes!
6. privileges table reload? Yes!
mysql -u root -p
비밀번호 입력
SELECT VERSION(); // mysql 버전확인
show databases //현재 database 확인.
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
source ~/.bashrc
nvm -v // 중간에 설치가 잘 되었는지 nvm 버전도 확인 해봅니다.
nvm install node // 제일 최신버전 설치
nvm install <버전>
nvm install 18 // 저희팀은 18버전을 사용하기 때문에 18을 썼습니다.
//혹시 몰라 삭제 명령어도 적겠습니다.
nvm uninstall <버전>
npm install -g pm2
pm2 start server.js
저희 팀같은 경우는 루트 경로를 설정해줘야 했습니다.
ecosystem.config.js
module.exports = {
apps: [
{
name: 'dmet',
script: '/home/ubuntu/DevMet-backend/dist/main.js', // 절대 경로로 수정
exec_mode: 'cluster',
instances: 'max',
node_args: '-r ts-node/register',
},
],
};
추가적인 명령어
[참고 블로그]
[mysql 설치]
https://www.vultr.com/docs/how-to-install-mysql-5-7-on-ubuntu-20-04/
[mysql root 비밀번호 설정하기]
https://joonyon.tistory.com/entry/LinuxMySQL-Server-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0-feat-Ubuntu-1804
[우분투에 NVM node 설정하기]
https://iter.kr/%EC%9A%B0%EB%B6%84%ED%88%AC-nvm-node-js-%EC%84%A4%EC%B9%98-%EC%84%A4%EC%A0%95/
[pm2 설치하기]
https://songjang.tistory.com/11