>  기사  >  데이터 베이스  >  MySQL 시리즈 (6) 초보자를 위한 기초

MySQL 시리즈 (6) 초보자를 위한 기초

黄舟
黄舟원래의
2017-01-22 16:42:541142검색

MySQL에 연결

형식: mysql -h 호스트 주소 -u 사용자 이름 -p 사용자 비밀번호

1. 예제 1: 이 머신에서 MYSQL에 연결합니다.

먼저 DOS 창을 열고 mysqlbin 디렉터리를 입력한 다음 mysql -uroot -p 명령을 입력합니다. Enter를 누르면 방금 MYSQL이 설치된 경우 비밀번호를 입력하라는 메시지가 표시됩니다. 슈퍼 사용자 루트에는 비밀번호가 없으므로 직접 Enter를 눌러 MySQL에 들어가십시오. mysql>

2. 예제 2: 원격 호스트에서 MYSQL에 연결합니다. 원격 호스트의 IP가 110.110.110.110이고, 사용자 이름이 루트이고, 비밀번호가 abcd123이라고 가정합니다. 그런 다음 다음 명령을 입력합니다:

mysql -h110.110.110.110 -uroot -pabcd123

(참고: u와 root에는 공백이 필요하지 않으며 다른 경우에도 마찬가지입니다.)

3 . MySQL 종료 명령: 종료(Enter)

참고: 원격 호스트에 성공적으로 연결하려면 원격 호스트에서 MySQL 원격 액세스 권한을 열어야 합니다.

방법은 다음과 같습니다.

원격 호스트를 관리자로 입력

다음 명령을 입력하세요

mysql>GRANT ALL PRIVILEGES ON *.* TO 'agui'@%'IDENTIFIEDBY '123' WITH GRANT OPTION;

FLUSH PRIVILEGES;

//모든 호스트에 데이터 액세스 권한 부여

mysql>FLUSH PRIVILEGES

//수정 사항 적용

agui 사용된 사용자 이름

, 비밀번호는 123

즉, 원격 호스트를 설정한 후 mysql -h110.110.110을 통해 원격 호스트에 연결할 수 있습니다. .110 -uagui -p123

비밀번호 변경

형식: mysqladmin -u 사용자 이름 -p 이전 비밀번호 비밀번호 새 비밀번호

1. 예 1: 루트에 비밀번호 ab12를 추가합니다. 먼저 DOS에서 mysqlbin 디렉터리를 입력한 후 다음 명령을 입력합니다.

mysqladmin -uroot -password ab12

참고: 루트에는 처음에 비밀번호가 없으므로 -p 이전 비밀번호 항목은 생략될 수 있습니다.

2. 예 2: 루트 비밀번호를 djg345로 변경합니다.

mysqladmin -uroot -pab12 비밀번호 djg345

새 사용자 추가

(참고: 위와 달리 다음은 MySQL 환경에서의 명령입니다. , 따라서 명령 종결자로 그 뒤에 세미콜론이 있습니다)

형식: grant select on Database.* to username@login “password”로 식별되는 호스트

예 1. 사용자 추가 test1의 비밀번호는 abc이며, 이를 통해 모든 호스트에 로그인할 수 있으며 모든 데이터베이스에 대한 쿼리, 삽입, 수정 및 삭제 권한을 갖습니다. 먼저 루트 사용자로 MySQL에 연결한 후 다음 명령을 입력합니다.

grant select,insert,update,delete on *.* to test1@“%” 식별: “abc”;

그러나 예제 1에 추가된 사용자는 매우 위험합니다. 누군가 test1의 비밀번호를 알고 있다면 그는 인터넷의 모든 컴퓨터에서 mysql 데이터베이스에 로그인하여 데이터로 원하는 모든 작업을 수행할 수 있습니다.

예제 2, 비밀번호가 abc인 사용자 test2를 추가하면 이 사용자는 localhost에만 로그인할 수 있고 데이터베이스 mydb를 쿼리, 삽입, 수정 및 삭제할 수 있습니다(localhost는 로컬 호스트를 참조하며, 즉, MYSQL 데이터베이스가 위치한 호스트)이므로 사용자가 test2의 비밀번호를 알고 있더라도 인터넷에서 데이터베이스에 직접 접근할 수 없고 MYSQL 호스트의 웹 페이지를 통해서만 접근할 수 있다.

"abc"로 식별되는 test2@localhost에 mydb.*에 대한 선택, 삽입, 업데이트, 삭제 권한을 부여합니다.

test2에 비밀번호를 지정하지 않으려면 다른 비밀번호를 입력하면 됩니다. 비밀번호를 제거하는 명령입니다.

""으로 식별되는 test2@localhost에 mydb.*에 대한 선택, 삽입, 업데이트, 삭제 권한을 부여합니다.

MySQL의 데이터베이스 작업을 살펴보겠습니다. 참고: 먼저 MySQL에 로그인해야 합니다. 다음 작업은 MySQL 프롬프트에서 수행되며 각 명령은 세미콜론으로 끝납니다.

운영능력

1. 명령을 입력하고 Enter 키를 누를 때 세미콜론을 추가하는 것을 잊었다면 명령을 다시 입력할 필요가 없습니다. 세미콜론을 추가하고 Enter 키만 누르면 됩니다. 즉, 완전한 명령을 여러 줄로 나누고 세미콜론을 끝 표시로 사용할 수 있습니다.

2. 커서 위쪽 및 아래쪽 키를 사용하여 이전 명령을 불러올 수 있습니다. 하지만 이전에 사용했던 이전 버전의 MySQL은 이를 지원하지 않습니다. 나는 mysql-3.23.27-beta-win을 사용하고 있습니다.

표시 명령

1. 데이터베이스 목록을 표시합니다.

showdatabases;

처음에는 mysql과 test라는 두 개의 데이터베이스만 있습니다. mysql 라이브러리는 매우 중요합니다. 여기에는 MySQL 시스템 정보가 포함되어 있으며 비밀번호를 변경하고 새 사용자를 추가할 때 실제로 이 라이브러리를 사용합니다.

2. 라이브러리에 데이터 테이블 표시:

use mysql; //라이브러리를 엽니다. FOXBASE를 배운 사람들에게는 친숙할 것입니다.

show tables;

3. 데이터 테이블의 구조 표시:

테이블 이름 설명

4. 데이터베이스 생성:

데이터베이스 데이터베이스 이름 생성

5. 테이블 생성:

라이브러리 이름 사용

테이블 테이블 이름(필드 설정 목록) 생성

6. 데이터베이스 및 테이블 삭제:

데이터베이스 이름 삭제

테이블 테이블 이름 삭제; 테이블의 레코드 지우기:

테이블 이름에서 삭제

8. 테이블에 레코드 표시:

테이블 이름에서 *를 선택하세요.

9. 마지막으로 실행된 문에서 생성된 오류, 경고 및 알림 표시:

경고 표시

10. 마지막으로 실행된 문에서 생성된 오류만 표시됩니다.

show error;

Instance

학교가 있으면 데이터베이스 삭제; 존재한다면 삭제하세요

데이터베이스 학교 생성; //도서관 SCHOOL 생성

use school; //도서관 SCHOOL 열기

교사 테이블 생성 //TEACHER 테이블 생성

(

id int(3) auto_increment는 null이 아닌 기본 키,

name char(10)은 null이 아님,

주소 varchar(50) 기본값 'Shenzhen',

연도

); //테이블 생성 끝

//다음은 삽입된 필드입니다

선생님 값에 삽입('','glcchenang','XX 회사', '1976-10-10');

교사 값에 삽입('','jack','XX 회사','1975-12-23');

참고: 테이블 생성에서:

1. ID를 길이가 3인 숫자 필드(int(3))로 설정하고 각 레코드가 자동으로 1씩 증가하도록 합니다. auto_increment는 비워둘 수 없습니다. null이 아니고 기본 필드 기본 키로 만듭니다.

2. NAME을 길이가 10인 문자 필드로 설정합니다.

3. ADDRESS를 길이 50의 문자 필드로 설정하고 기본값은 Shenzhen입니다. varchar와 char의 차이점은 무엇입니까? 이에 대한 향후 기사가 나올 때까지만 기다릴 수 있습니다.

4. YEAR를 날짜 필드로 설정합니다.

mysql 프롬프트에서 위 명령어를 입력하면 동작은 되지만 디버깅에는 불편합니다. 위의 명령을 school.sql이라고 가정하고 텍스트 파일에 그대로 작성한 후 c:에 복사하고, DOS 상태에서 mysqlbin 디렉터리에 들어가서 다음 명령을 입력하면 됩니다.

mysql -uroot -p 비밀번호 < c:school.sql

성공하면 오류가 있으면 표시되지 않고 빈 행이 남게 됩니다. (위 명령은 디버깅되었으므로 // 주석만 제거하면 사용할 수 있습니다.)

텍스트를 데이터베이스로

1. 텍스트 데이터는 다음 형식을 따라야 합니다. 필드 데이터는 탭 키로 구분되고 null 값은 n으로 대체됩니다.

예:

3. rose 심천 제2중학교 1976-10-10

4. 마이크 선전 제1중학교 1975-12-23

2. 데이터 입력 명령은 데이터 로컬 infile "파일 이름"을 테이블 테이블 이름으로 로드합니다.

참고: 파일을 mysqlbin 디렉터리에 복사하고 먼저 use 명령을 사용하여 테이블이 있는 데이터베이스를 여는 것이 좋습니다. 위치

또는 데이터베이스에 로그인하기 전에 텍스트를 가져올 경로로 경로를 전송(cd)하세요.

데이터베이스 백업

(명령어는 DOS의 mysqlbin 디렉터리에서 실행)

mysqldump --opt school>school.bbb

참고: 학교 데이터베이스를 school.bbb 파일에 백업하세요. School.bbb는 임의의 파일 이름을 선택할 수 있으며 파일을 열어서 새로운 것을 찾을 수 있는지 확인하세요.

mysql 데이터베이스 자동 백업 방법

1. 먼저 배치 파일을 만들고 다음 코드를 .bat 파일로 저장합니다. 파일 이름은 영어로 하는 것이 좋습니다. 아래 경로에 주의하세요. 작성자 자신의 데이터베이스를 예로 들면, 데이터베이스는 D 드라이브 아래 mysqlmysql 아래에 설치되어 있습니다. 다음 코드는 날짜입니다.

@echo off[9]

color 0D

MODE con: COLS=71 LINES=25

title mysql 데이터베이스 자동 백업 스크립트(작업 계획) )--스크립트 작성자: http://www. ***. com

set sou_dir="D:mysqlMysqldata"

set obj_dir=F:beifen%date:~0,10%

net stop mysql

md %obj_dir%

xcopy /e /y %sou_dir% %obj_dir%

net start mysql

@echo off&setlocalenabledelayeexpansion

call:D, 30

echo. 30일 전 날짜는 %D%

echo입니다. 30일 전 백업을 삭제하세요...

F:beifen%D % rd /s /q F:beifen%D%

echo 자동 백업이 완료되고 프로그램이 자동으로 종료됩니다...

복원/가져오기

데이터베이스 복원/가져오기[10] 가져오기 과정에서 mysql -u root -p

mysql>use Database

와 같은 mysql 데이터베이스 콘솔에 들어간 후 source 명령을 사용하세요. , 뒤에 매개변수가 스크립트 파일입니다(예: 여기에 사용된 .sql)

mysql>source d:dbname.sql

프롬프트에서 파일을 찾을 수 없는 경우 소스를 입력한 후 , 마우스를 사용하여 파일을 이동할 수 있습니다.

추적 파일 시작

mysqld --debug

서버 닫기

mysqladmin -u root shutdown

MySQL 서비스 시작

mysqld --console

위는 초보자를 위한 Mysql 시리즈(6) 기본 내용입니다. 더 많은 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 주목해주세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.