1. 데이터베이스에 연결합니다 형식: mysql -h 호스트 주소 -u 사용자 이름 -p 사용자 비밀번호 1.1. 먼저 DOS 창을 열고 mysqlbin 디렉토리를 입력한 다음 mysql -u root -p 명령을 입력하면 비밀번호를 입력하라는 메시지가 표시됩니다. 입력할 수도 있고 입력하지 않을 수도 있습니다. 사용자 이름 앞에는 공백이 있어야 하며, 비밀번호 앞에는 공백이 없어야 합니다. 그렇지 않으면 비밀번호를 다시 입력하라는 메시지가 표시됩니다. MYSQL을 방금 설치한 경우 슈퍼유저 루트에는 비밀번호가 없으므로 Enter 키를 눌러 MYSQL을 입력하면 됩니다. mysql>
1.2 원격 호스트 MYSQL에 연결합니다.
원격 호스트의 IP는 110.110.110.110, 사용자 이름은 root, 비밀번호는 abcd123이라고 가정합니다. 그런 다음 다음 명령을 입력합니다: mysql -h110.110.110.110 -u root -p 123; (참고: u와 root 사이에 공백을 추가할 필요가 없으며 다른 경우에도 마찬가지입니다.) 1.3 MYSQL 명령 종료: 종료(반납)
2. 사용자 추가 형식: 데이터베이스에서 선택 권한 부여.* "비밀번호"로 식별되는 사용자 이름@로그인 호스트 2.1 사용자 test1 추가 비밀번호 abc를 사용하여 모든 호스트에 로그인하고 모든 데이터베이스에 대한 쿼리, 삽입, 수정 및 삭제 권한을 가질 수 있습니다.
먼저 루트 사용자로 MYSQL에 연결한 후 다음 명령을 입력하세요.
grant select,insert,update,delete on *.* to [email=test1@”%]test1@”%[/email]” Identified by “abc”;
로그인 후 복사
그러나 사용자를 추가하는 것은 매우 위험합니다. 인터넷상의 어느 컴퓨터에서나 mysql 데이터베이스에 로그인하여 데이터로 원하는 작업을 수행할 수 있습니다. 해결 방법은 2.2를 참조하세요. 2.2 비밀번호가 abc인 사용자 test2를 추가하면 해당 사용자는 localhost에만 로그인할 수 있고 데이터베이스 mydb를 쿼리, 삽입, 수정 및 삭제할 수 있습니다. (localhost는 로컬 호스트, 즉 MYSQL 데이터베이스))가 위치하므로, 사용자가 test2의 비밀번호를 알고 있더라도 인터넷에서 데이터베이스에 직접 접근할 수 없고, MYSQL 호스트의 웹 페이지를 통해서만 접근할 수 있다.
grant select,insert,update,delete on mydb.* to [email=test2@localhost]test2@localhost[/email] identified by “abc”;
로그인 후 복사
test2에 비밀번호가 포함되지 않도록 하려면 다른 명령을 입력하여 비밀번호를 제거할 수 있습니다.
grant select,insert,update,delete on mydb.* to [email=test2@localhost]test2@localhost[/email] identified by “”
로그인 후 복사
3. 데이터베이스 운영
3.1 데이터베이스 생성 참고: 데이터베이스를 생성하기 전에 먼저 Mysql 서버에 연결해야 합니다. 명령: create Database < 데이터베이스 이름> 예제 1: xhkdb라는 이름의 데이터베이스 생성
mysql> create database xhkdb;
로그인 후 복사
예제 2: 데이터베이스 생성 및 사용자 할당 ①CREATE DATABASE 데이터베이스 이름; ②GRANT SELECT,INSERT,UPDATE, DELETE,CREATE, DROP,ALTER ON 데이터베이스 이름.* TO username@localhost IDENTIFIED BY 'password'; ③SET PASSWORD FOR 'database name'@'localhost' = OLD_PASSWORD('password'); 3개의 명령 실행 순서대로 데이터베이스 생성을 완료합니다. 참고: 중국어 '비밀번호'와 '데이터베이스'는 사용자가 직접 설정해야 합니다.
3.2 데이터베이스 표시 명령: 데이터베이스 표시(참고: 끝에 s가 있음)
mysql> show databases
로그인 후 복사
3.3 데이터베이스 삭제 명령: 데이터베이스 삭제 <데이터베이스 이름> ; 예시: xhkdb라는 이름의 데이터베이스 삭제
mysql> drop database drop_database;
ERROR 1008 (HY000): Can't drop database 'drop_database'; database doesn't exist
//发生错误,不能删除'drop_database'数据库,该数据库不存在。
mysql> drop database if exists drop_database;
Query OK, 0 rows affected, 1 warning (0.00 sec)//产生一个警告说明此数据库不存在
mysql> create database drop_database;
Query OK, 1 row affected (0.00 sec)
mysql> drop database if exists drop_database;//if exists 判断数据库是否存在,不存在也不产生错误
Query OK, 0 rows affected (0.00 sec)
로그인 후 복사
3.4 데이터베이스에 연결 명령: <데이터베이스 이름> 사용 예: xhkdb 데이터베이스가 있으면 액세스를 시도합니다. mysql> >화면 프롬프트: 데이터베이스 변경됨 use 문은 db_name 데이터베이스를 후속 문에 대한 기본(현재) 데이터베이스로 사용하도록 MySQL에 알릴 수 있습니다. 이 데이터베이스는 세그먼트가 끝날 때까지 또는 다른 USE 문이 실행될 때까지 기본 데이터베이스로 유지됩니다.
mysql> USE db1;
mysql> SELECT COUNT(*) FROM mytable; # selects from db1.mytable
mysql> USE db2;
mysql> SELECT COUNT(*) FROM mytable; # selects from db2.mytable
로그인 후 복사
USE 문을 사용하여 특정 현재 데이터베이스를 표시해도 다른 테이블에 액세스하는 데 방해가 되지 않습니다. 데이터베이스. 다음 예에서는 db1 데이터베이스의 작성자 테이블과 db2 데이터베이스의 편집 테이블에 액세스할 수 있습니다.
mysql> USE db1;
mysql> SELECT author_name,editor_name FROM author,db2.editor
-> WHERE author.editor_id = db2.editor.editor_id;
로그인 후 복사
데이터베이스를 종료하거나 다른 데이터베이스에 연결하려면 '다른 데이터베이스 이름' 사용자만 사용하면 됩니다. 3.5 현재 선택된 데이터베이스
명령: mysql> select Database(); MySQL의 SELECT 명령은 다른 프로그래밍 언어의 인쇄 또는 쓰기와 유사하며, 문자열을 표시하는 데 사용할 수 있습니다. 숫자, 수학식의 결과 등 MySQL에서 SELECT 명령의 특수 기능을 사용하는 방법은 무엇입니까?
(1) MYSQL 버전을 표시합니다
mysql> select version();
+-----------------------+
| version() |
+-----------------------+
| 6.0.4-alpha-community |
+-----------------------+
1 row in set (0.02 sec)
로그인 후 복사
(2). 현재 시간을 표시합니다
mysql> select now();
+---------------------+
| now() |
+---------------------+
| 2009-09-15 22:35:32 |
+---------------------+
1 row in set (0.04 sec)
로그인 후 복사
(3). 일
SELECT DAYOFMONTH(CURRENT_DATE);
+--------------------------+
| DAYOFMONTH(CURRENT_DATE) |
+--------------------------+
| 15 |
+--------------------------+
1 row in set (0.01 sec)
SELECT MONTH(CURRENT_DATE);
+---------------------+
| MONTH(CURRENT_DATE) |
+---------------------+
| 9 |
+---------------------+
1 row in set (0.00 sec)
SELECT YEAR(CURRENT_DATE);
+--------------------+
| YEAR(CURRENT_DATE) |
+--------------------+
| 2009 |
+--------------------+
1 row in set (0.00 sec)
로그인 후 복사
(4). 문자열
mysql> SELECT "welecome to my blog!";
+----------------------+
| welecome to my blog! |
+----------------------+
| welecome to my blog! |
+----------------------+
1 row in set (0.00 sec)
(6)을 연결합니다. 참고: 여기서는 CONCAT() 함수를 사용하여 문자열을 연결합니다. 그리고 앞서 배운 AS를 사용해 결과 컬럼 'CONCAT(f_name, " ", l_name)'에 가명을 부여했습니다
select CONCAT(f_name, " ", l_name)
AS Name
from employee_data
where title = 'Marketing Executive';
+---------------+
| Name |
+---------------+
| Monica Sehgal |
| Hal Simlai |
| Joseph Irvine |
+---------------+
3 rows in set (0.00 sec)
로그인 후 복사
4. 테이블 작업
4.1 테이블 생성
명령: create table
( [,..]); 예를 들어 MyClass Table <🎜이라는 파일을 생성합니다. > 4.2 테이블 구조 가져오기 명령: desc 테이블 이름 또는 테이블 이름의 열 표시
mysql> create table MyClass(
> id int(4) not null primary key auto_increment,
> name char(20) not null,
> sex int(4) not null default '0',
> degree double(16,2));
로그인 후 복사
mysql> desc MyClass;
mysql> show columns from MyClass;
drop database if exists school; //如果存在SCHOOL则删除
create database school; //建立库SCHOOL
use school; //打开库SCHOOL
create table teacher //建立表TEACHER
(
id int(3) auto_increment not null primary key,
name char(10) not null,
address varchar(50) default ''深圳'',
year date
); //建表结束
//以下为插入字段
insert into teacher values('''',''glchengang'',''深圳一中'',''1976-10-10'');
insert into teacher values('''',''jack'',''深圳一中'',''1975-12-23'');