명령줄을 통해 MySQL 데이터베이스에 연결하는 방법
게시 됨: 2021-05-31이 게시물에서는 명령줄을 사용하여 로컬 호스트 또는 원격 서버의 MySQL 데이터베이스에 연결하기 위해 따를 수 있는 MySQL 데이터베이스 명령줄 연결 가이드를 단계별로 공유하고 싶습니다.
명령줄을 통해 데이터베이스에 MySQL을 연결하는 가장 좋은 방법을 살펴보기 전에 먼저 MySQL 데이터베이스에 연결하는 데 사용할 수 있는 다른 옵션에 대해 설명하겠습니다.
명령줄에서 MySQL 데이터베이스에 연결하는 것은 DigitalOcean과 같은 클라우드 서버에서 데이터베이스를 관리할 때 유용한 기술이 될 수 있습니다.
DigitalOcean에서 MySQL 데이터베이스에 로그인하려면 DigitalOcean SSH 콘솔을 사용해야 합니다. 이 게시물은 데이터베이스 명령줄 트릭에 연결하는 방법을 배우기 시작하기에 좋은 곳입니다.
MySQL 데이터베이스 연결 도구
먼저 MySQL은 로컬 호스트 서버와 원격 서버에 설치되어 있으며 PhpMyAdmin 또는 다음을 포함하는 기타 MySQL 데이터베이스 관리 도구와 같은 도구를 사용하여 액세스할 수 있음을 이해해야 합니다.
- PhpMyAdmin
- SQLyog
- 하이디SQL
- MySQL용 dB Forge 스튜디오
- MySQL 워크벤치
- MySQL용 Toad Edge
- MySQL용 Navicat
- 속편 프로
공유 호스팅 환경에서 단순히 MySQL에 연결해야 하는 경우 대부분의 웹 호스트에 설치된 PhpMyAdmin을 사용하여 MySQL 데이터베이스에 액세스하고 관리할 수 있습니다.
일부 호스팅 환경에는 데이터베이스 생성 및 관리를 위한 MySQL 데이터베이스 관리 마법사도 함께 제공됩니다.
데이터베이스 명령줄에 MySQL 연결
명령줄을 통해 MySQL 데이터베이스에 연결하려면 빠른 요약에서 다음 단계를 따라야 합니다.
- Windows 또는 Mac에서 터미널 또는 명령줄을 엽니다.
- 루트 폴더로 이동하는지 확인하거나 적절한 폴더에서 열리는 bash와 같은 터미널을 사용하는 것이 좋습니다.
- Windows의 경우 'MySQL이 내부 또는 외부 명령으로 인식되지 않습니다'라는 오류가 발생하지 않도록 MySQL에 대한 환경 변수가 적절하게 설정되어 있는지 확인해야 합니다. localhost에 있는 경우 데이터베이스 연결을 시작하기 전에 아래 이미지와 같이 서버가 실행 중인지 확인해야 합니다.
- 터미널이 열리면 모든 것이 올바르게 설정되었으므로 이제 다음과 같이 명령 프롬프트를 통해 MySQL에 연결하는 명령을 입력해야 합니다. mysql -u username -p 로그인 세부 정보와 일치하도록 사용자 이름과 암호를 변경합니다. 터미널에서 이 명령을 실행하면 데이터베이스의 암호를 묻는 메시지가 표시됩니다. 기본적으로 localhost 환경의 경우 사용자 이름은 일반적으로 root이고 암호는 비어 있습니다.
- 연결되면 명령줄을 통해 MySQL 데이터베이스에 연결되었음을 나타내는 위의 이미지에 표시된 메시지가 표시되어야 합니다.
- 계속해서 여러 명령줄 명령을 실행하여 MySQL 데이터베이스에서 변경 사항을 실행할 수 있습니다. 예를 들어, 아래 이미지와 같이 서버의 모든 데이터베이스를 표시하는 show 데이터베이스 명령으로 시작할 수 있습니다. 나의
- 다음은 다른 일반적인 MySQL 명령줄입니다.
액세스 모니터: mysql -u [사용자 이름] -p; (비밀번호를 묻는 메시지가 표시됩니다)
모든 데이터베이스 표시: 데이터베이스 표시;
데이터베이스 액세스: mysql -u [사용자 이름] -p [데이터베이스](암호를 묻는 메시지가 표시됨)
새 데이터베이스 생성: 데이터베이스 생성 [데이터베이스];
데이터베이스 선택: [데이터베이스] 사용;
사용 중인 데이터베이스 확인: select database();
모든 테이블 표시: 테이블 표시;
테이블 구조 표시: [테이블] 설명;
테이블의 모든 인덱스 나열: show index from [table];
열이 있는 새 테이블 생성: CREATE TABLE [table] ([column] VARCHAR(120), [another-column] DATETIME);
열 추가: ALTER TABLE [테이블] ADD COLUMN [열] VARCHAR(120);
고유한 자동 증분 ID가 있는 열 추가: ALTER TABLE [테이블] ADD COLUMN [열] int NOT NULL AUTO_INCREMENT PRIMARY KEY;
레코드 삽입: INSERT INTO [테이블] ([열], [열]) VALUES ('[값]', '[값]');
날짜/시간 입력을 위한 MySQL 함수: NOW()
레코드 선택: SELECT * FROM [테이블];
설명 레코드: EXPLAIN SELECT * FROM [테이블];
레코드 부분 선택: SELECT [column], [another-column] FROM [table];
레코드 계산: SELECT COUNT([열]) FROM [테이블];
그룹화된 레코드 계산 및 선택: SELECT *, (SELECT COUNT([column]) FROM [table]) AS count FROM [table] GROUP BY [column];
특정 레코드 선택: SELECT * FROM [table] WHERE [column] = [value]; (선택자: <, >, !=; 여러 선택자를 AND, OR로 결합)
[값]이 포함된 레코드 선택: SELECT * FROM [테이블] WHERE [열] LIKE '%[값]%';
[값]으로 시작하는 레코드 선택: SELECT * FROM [테이블] WHERE [열] LIKE '[값]%';
val로 시작하고 ue로 끝나는 레코드 선택: SELECT * FROM [table] WHERE [column] LIKE '[val_ue]';
범위 선택: SELECT * FROM [테이블] WHERE [열] BETWEEN [값1] 및 [값2];
맞춤 주문으로 선택하고 제한만: SELECT * FROM [테이블] WHERE [열] ORDER BY [열] ASC LIMIT [값]; (순서: DESC, ASC)
레코드 업데이트: UPDATE [테이블] SET [열] = '[업데이트된-값]' WHERE [열] = [값];
레코드 삭제: DELETE FROM [테이블] WHERE [열] = [값];
테이블에서 모든 레코드를 삭제합니다(테이블 자체를 삭제하지 않고): DELETE FROM [table]; (이것은 또한 id 열과 같은 자동 생성 열에 대한 증분 카운터를 재설정합니다.)
테이블의 모든 레코드 삭제: truncate table [table];
테이블 열 제거: ALTER TABLE [테이블] DROP COLUMN [열];
테이블 삭제: DROP TABLE [테이블];
데이터베이스 삭제: DROP DATABASE [데이터베이스];
사용자 정의 열 출력 이름: SELECT [column] AS [custom-column] FROM [table];
데이터베이스 덤프 내보내기(자세한 정보는 여기): mysqldump -u [사용자 이름] -p [데이터베이스] > db_backup.sql
잠긴 테이블에 대해 –lock-tables=false 옵션을 사용합니다(자세한 정보는 여기).
데이터베이스 덤프 가져오기(자세한 정보는 여기): mysql -u [username] -p -h localhost [database] < db_backup.sql
로그아웃: 종료;
이 MySQL 명령 치트 시트의 소스에서 더 많은 명령을 볼 수 있습니다.
결론
이 게시물에서는 명령줄에서 MySQL 데이터베이스에 연결하는 방법을 공유하고 단계별로 보여주었습니다. 이 게시물의 내용은 명령줄에서 MySQL 데이터베이스에 연결하는 데 사용하는 명령이 MySQL -u 사용자 이름 -p여야 합니다. 이 명령이 작동하려면 데이터베이스의 사용자 이름과 암호를 항상 기억해야 합니다.
마지막으로 localhost 환경에 있는 경우 사용자 이름이 대부분 'root'이고 사용자 이름이 비어 있음을 잊지 마십시오.