mysql 데이터베이스 추가, 삭제, 수정 및 확인
하나, mysql 데이터베이스에 로그인
데이터베이스의 기본 구조
- 구조 : mysql 데이터베이스의 기본 관리자는 루트입니다.
库——表——数据
로그인 형식 :
- 비밀번호가없는 경우 : mysql -u root
- 처음으로 비밀번호 설정 : mysqladmin -u root -p password'password value '
(输入后,下一步直接回车即可)
- 비밀번호를 사용하여 다음과 같이 로그인합니다. mysql -u root -p
(按照提示输入密码)
또는 mysql -u root -p password value(直接登录)
- 처음으로 비밀번호를 변경하지 않음 : mysql -u root -p password
(按照提示先输入旧密码,然后根据提示输入两次新密码)
2. 데이터베이스 및 관련 규칙을 종료하고보기
기본적으로 모든 mysql 연산 문은 ';'로 끝나야하지만 일부는 필요하지 않지만 (;与 , 要使用英文的)
대소 문자를 구분하지 않고 입력 하는 습관을 기르는 것이 좋습니다 . 일반적으로 명령을 실행 한 후에는 "OK"라는 메시지가 표시됩니다.
- 데이터베이스 서비스의 기본 정보보기 :
msyql> status,
데이터베이스 종료 : 종료 또는 종료;
셋째, 데이터베이스에서 라이브러리와 테이블보기 및 생성
명령 형식 :
***查看数据库中有那些库
mysql>show databases;
***切换到指定的库中
mysql>use 库名;
***查看当前库中有哪些表
mysql>show tables;
***查看mysql库中指定表的数据结构
mysql>describe 库名.表名;
***创建表
mysql>create table 库名.表名 (字段1名称 类型,字段2名称 类型,... primary key (主键名));
***删除指定表
mysql>drop table 库名.表名;
***删除指定库
mysql>drop database 库名;
예:
- 현재 데이터베이스에있는 라이브러리보기
mysql> show databases;
- 지정된 라이브러리
mysql> use mysql로 전환합니다 .
- 현재 라이브러리에있는 테이블보기
mysql> show tables;
- 테이블
mysql> describe user;(得先切换到指定库之后才能直接查看)
mysql> describe mysql.user;(这个不需要切换到指定库,前面跟上表所在的库就可以)
- 새 라이브러리
mysql> create database aaa; (aaa라는 라이브러리 생성)
- 새 테이블 만들기
mysql> create table aaa.abc (xm char (16) not null, nl char (12) default '', sx char (10), yy char (10), primary key (xm));
here The 괄호 안의 char (16)은 최대 16 자까지 입력 할 수 있음을 의미합니다.
null이 아님은 비워 둘 수 없음을 의미합니다.
기본값 ''은 기본값이 비어 있음을 의미하지만 데이터를 삽입 할 양을 지정하면 그러면 쓰기가 아닌 데이터를 삽입 할 때만 기본적으로 비워지는 양입니다.(如果'20'那么就是默认为20,这里的什么也没有,所以是空)
기본 키 (xm) 이는 기본 키가 xm이고 기본 키가 고유하며 비워 둘 수 없음을 의미합니다. , xm의 데이터는 반복 할 수 없습니다.
(写的过程中我的'老是变成’这个,所有的命令只要有'都是',不是‘这个,并且所有的标点符号都是英文的)
생성 후 describe를 사용하여 테이블의 구조를 볼 수 있습니다. 테이블의 기본 정보를 표시합니다.
- 지정된 테이블
mysql> drop table aaa.abc를 삭제합니다.
mysql> drop database aaa 라이브러리를 삭제합니다 .
삭제 후 show database를 사용합니다. 보면 생성 된 라이브러리가 사라진 것을 알 수 있습니다.
넷째, 테이블의 데이터 관리
명령 형식 :
往表中插入数据
mysql>insert into 库名.表名 (字段1名称,字段2名称,...) values('字段1的值','字段2的值',...);
简化版:insert into 库名.表名 values('字段1的值','字段2的值',...);
(这个是把字段隐藏了,写字段值的时候按表的数据结构的顺序写就行)(每个字段值都要加'')
如:insert aaa.bbb (姓名,数学,计算机) values('李蔚','88','77');
即往aaa这个库中的bbb表中的字段 姓名,数学,计算机 里插入数据 李蔚 88 77
查询数据记录
mysql>select 字段1名称,字段2名称,... from 库名.表名 where 条件; (select * 表示查询全部,也可以根据条件查询)
如:select 姓名,数学,计算机 from aaa.bbb where 数学= '88';
即查询aaa这个库中bbb中数学成绩等于88 的数据,并且只显示字段 姓名,数学,计算机
select * from aaa.bbb;
即查询aaa库中的bbb表中的所有数据记录
修改表中的数据
mysql>update 库名.表名 set 字段1名称=新值,字段2名称=新值... where 条件;
如: update aaa.bbb set 计算机='80',数学='82' where 姓名='刘波';
即把aaa库中的bbb表中的 姓名是刘波 的数据记录的 计算机字段值改成 80 ,数学字段值改成 82
删除表中指定的数据
mysql>delete from 库名.表名 where 条件;
如: delete from aaa.bbb where 姓名='魏帅';
即删除aaa库中的bbb表中的姓名字段值是魏帅的所有数据
예:
- 테이블에 데이터 삽입
- 쿼리 데이터 레코드
- 테이블의 데이터를 수정
하십시오. 다시 확인하고 수정이 성공했는지 확인하십시오.
- 테이블에서 지정된 데이터를 삭제
하십시오. 다시 확인하고 성공적으로 삭제되었는지 확인하십시오.
다섯, 데이터베이스 사용자 인증
- 이유 : Mysql 데이터베이스의 루트 계정에는 모든 라이브러리 및 테이블에 대한 모든 권한이 있습니다.
(权限太高会产生安全风险)
- 솔루션 : 권한이 낮은 사용자를 생성하고 계정이 라이브러리 및 테이블 관리 및 유지 관리의 일부만 담당하도록합니다.
명령 형식 :
授予权限
mysql>grant 权限列表 on 库名.表名 to 用户名@指定的ip地址 identified by '密码值';
权限列表:select (查询)、 insert (插入)、update (修改)、delete (删除)、all(所有)等
库名.表名 针对指定的库和表,* 代表所有
用户名@指定的ip地址 用于指定用户名称和允许访问的客户端地址 (localhost就是本机)
identified by '密码值' 设置用户连接mysql数据库时所用的密码
如:grant select on aaa.* to 'aaa'@'localhost' identified by '123456';
即授权一个用户名是aaa,允许从本机登录,对aaa库中的所有表有查询的权限,密码是123456
查看权限
mysql>show grants for 用户名@指定的ip地址;
如:show grants for boss@localhost;
即查看boss在本机的权限
取消权限
mysql>revoke 权限列表 on 库名.表名 from 用户名@指定的ip地址;
如:revoke all on aaa.* from boss@loaclhost;
即取消boss对aaa库中表的所有权限
예:
- 허가 된 권한
- 권한보기
- 권한 취소
다시 확인