MYSQL 초보자 가이드 및 소개
1. MYSQL에 접속합니다.
형식: mysql -h 호스트 주소 -u 사용자 이름 -p 사용자 비밀번호
1. 예 1: 이 머신에서 MYSQL에 연결합니다.
먼저 DOS 창을 열고 mysqlbin 디렉토리를 입력한 다음 mysql -uroot -p 명령을 입력하세요. Enter 키를 누르면 비밀번호를 입력하라는 메시지가 표시됩니다. MYSQL이 방금 설치된 경우 슈퍼 사용자 루트입니다. 비밀번호가 없으므로 Enter만 누르면 MYSQL을 입력할 수 있습니다. MYSQL 프롬프트는 다음과 같습니다. mysql>
2. 예시 2: 원격 호스트에서 MYSQL에 연결합니다. 원격 호스트의 IP가 110
.110.110.110이고 사용자 이름이 root이고 비밀번호가 abcd123이라고 가정합니다. 그런 다음 다음 명령을 입력합니다:
mysql -h110.110.110.110 -uroot -pabcd123
(참고: u와 root는 공백을 추가할 필요가 없으며 다른 경우에도 동일하게 적용됩니다)
3. MYSQL을 종료합니다. 명령: 종료(Enter)
2. 비밀번호를 변경합니다.
형식: mysqladmin -u 사용자 이름 -p 이전 비밀번호 비밀번호 새 비밀번호
1. 예 1: 루트에 비밀번호 ab12를 추가합니다. 먼저 DOS에서 mysqlbin 디렉터리를 입력한 후 다음 명령을 입력합니다(비밀번호에 명령 문자를 추가하지 마세요)
mysqladmin -uroot 비밀번호 ab12
참고: 루트에는 처음에 비밀번호가 없기 때문에 -p 이전 비밀번호 항목은 생략될 수 있습니다.
2. 예시 2: 루트 비밀번호를 djg345로 변경합니다.
mysqladmin -uroot -pab12 비밀번호 djg345
3. 새로운 사용자를 추가합니다. (참고: 다음은 위와 달리 MYSQL 환경의 명령이므로 명령 종결자로 세미콜론이 뒤에 옵니다.)
형식: grant select on Database.* to username@login 호스트 "password"로 식별
예 1. 사용자 test1을 비밀번호 abc로 추가하면 이 사용자는 모든 호스트에 로그인하고 모든 데이터베이스에 대한 쿼리, 삽입, 수정 및 삭제 권한을 가질 수 있습니다. 먼저 루트 사용자로 MYSQL에 연결한 후 다음 명령을 입력합니다.
grant select,insert,update,delete on *.* to test1@"%"
그러나 사용자가 추가했습니다. 예 1 이는 매우 위험합니다. 누군가 test1의 비밀번호를 알고 있다면 인터넷상의 모든 컴퓨터에서 mysql 데이터베이스에 로그인하여 데이터로 원하는 모든 작업을 수행할 수 있습니다.
예제 2, 비밀번호가 abc인 사용자 test2를 추가하면 이 사용자는 localhost에만 로그인할 수 있고 데이터베이스 mydb를 쿼리, 삽입, 수정 및 삭제할 수 있습니다(localhost는 로컬 호스트를 나타내며, 여기서 MYSQL 데이터베이스는 (위치) 호스트) 이렇게 하면 사용자가 test2의 비밀번호를 알고 있더라도 인터넷에서 직접 데이터베이스에 접근할 수 없고, MYSQL 호스트의 웹 페이지를 통해서만 접근할 수 있다.
"abc"로 식별되는 test2@localhost에 mydb.*에 대한 선택, 삽입, 업데이트, 삭제 권한을 부여합니다.
test2에 비밀번호가 없도록 하려면 다른 명령을 입력하여 비밀번호를 제거할 수 있습니다.
mydb.*에서 ""로 식별되는 test2@localhost에 선택, 삽입, 업데이트, 삭제 권한을 부여합니다.
이전 기사에서는 로그인, 사용자 추가, 비밀번호 변경 및 기타 문제에 대해 이야기했습니다. 다음 글에서는 MYSQL의 데이터베이스 작업에 대해 살펴보겠습니다. 참고: 먼저 MYSQL에 로그인해야 합니다. 다음 작업은 MYSQL 프롬프트에서 수행되며 각 명령은 세미콜론으로 끝납니다.
1. 조작 스킬
1. 명령어 입력 시 Enter 키를 누른 후 세미콜론 추가를 잊어버린 경우에는 명령어를 다시 입력할 필요 없이 세미콜론만 입력하고 누르시면 됩니다. 입력하다. . 즉, 완전한 명령을 여러 줄로 나누고 세미콜론을 끝 표시로 사용할 수 있습니다.
2. 커서 위쪽 및 아래쪽 키를 사용하여 이전 명령을 불러올 수 있습니다. 하지만 이전에 사용했던 MYSQL의 이전 버전은 이를 지원하지 않습니다. 현재 mysql-3.23.27-beta-win을 사용하고 있습니다.
2. 표시 명령
1. 데이터베이스 목록을 표시합니다.
show Databases;
처음에는 mysql과 test라는 두 개의 데이터베이스만 있었습니다. mysql 라이브러리는 매우 중요합니다. 여기에는 MYSQL 시스템 정보가 포함되어 있으며 비밀번호를 변경하고 새 사용자를 추가할 때 실제로 이 라이브러리를 사용합니다.
2. 라이브러리에 데이터 테이블 표시:
use mysql; //라이브러리를 엽니다. FOXBASE를 배운 사람들에게는 친숙할 것입니다.
show tables;
3. 데이터 테이블의 구조를 표시합니다:
테이블 이름을 설명합니다.
데이터베이스 생성:
5. 데이터베이스 이름 사용;
테이블 테이블 이름 생성(필드 설정 목록)
6. 데이터베이스 및 테이블 삭제:
테이블 테이블 이름 삭제; 테이블에서:
테이블 이름에서 삭제
8. 테이블에 레코드 표시:
테이블 이름에서 *를 선택합니다.
3. 데이터베이스 생성, 테이블 생성 및 데이터 삽입
학교가 있으면 삭제; //SCHOOL이 있으면 삭제
도서관 SCHOOL 만들기
use; school; //라이브러리 열기 SCHOOL
교사 테이블 만들기 //TEACHER 테이블 만들기
(
id int(3) auto_increment null 기본 키가 아님,
name char(10) not null,
address varchar (50) default 'Shenzhen',
연도
); //테이블 생성 끝
//다음은 삽입된 필드입니다
sert into Teacher value('','glchengang ','Shenzhen 1中','1976-10-10')
insert into Teacher value('','jack','Shenzhen No.1 Middle School','1975-12-23');
참고: 생성 중인 테이블에서
(1) ID를 길이가 3인 숫자 필드로 설정합니다: int (3) 각 레코드가 자동으로 1씩 증가하도록 합니다. auto_increment는 불가능합니다. 비어 있어야 함: null이 아니고 기본 필드 기본 키로 둡니다.
(2) NAME을 길이가 10인 문자 필드로 설정합니다.
(3) ADDRESS를 길이가 50인 문자 필드로 설정합니다. 기본값은 심천입니다. varchar와 char의 차이점은 무엇입니까? 이에 대한 향후 기사가 나올 때까지만 기다릴 수 있습니다.
(4) YEAR를 날짜 필드로 설정합니다.
mysql 프롬프트에서 위 명령을 입력할 수도 있지만 디버깅에는 불편합니다. 위의 명령을 school.sql이라고 가정하고 텍스트 파일에 그대로 작성한 후 c:에 복사하고, DOS 상태에서 mysqlbin 디렉터리에 들어가서 다음 명령을 입력하면 됩니다.
mysql -uroot - p 비밀번호 성공하면 아무 것도 표시되지 않고 빈 행이 남고, 오류가 있으면 프롬프트가 표시됩니다. (위 명령은 디버깅되었으므로 // 주석만 제거하면 사용할 수 있습니다.)
4. 텍스트 데이터를 데이터베이스로 전송
1. 텍스트 데이터가 준수해야 하는 형식: 필드 데이터는 탭 키로 구분되며, null 값은 n으로 대체됩니다. :
3 rose Shenzhen No. 2 Middle School 1976-10-10
4 mike Shenzhen No. 1 Middle School 1975-12-23
2. 데이터 입력 명령 로드 데이터 로컬 infile "파일 이름" table table name
참고: 파일을 mysqlbin 디렉터리에 복사하고 먼저 use 명령을 사용하여 테이블이 있는 라이브러리를 여는 것이 좋습니다.
mysqldump --opt school>school.bbb
참고: 학교에 데이터베이스를 백업합니다. .bbb 파일, school.bbb는 텍스트 파일입니다. 파일 이름을 선택하면 새로운 발견을 찾을 수 있습니다.