1、資料庫登入:
1.登入本地的MYSQL資料庫:mysql -u root -p
2.連接配接遠端主機上的MYSQL資料庫:mysql -h 192.168.191.2 -u root -p 123456
密碼修改:mysqladmin -u root -p 舊密碼 -password 新密碼
mysqladmin -u root -p abs123 -password 123456
2、增加新使用者并指定使用者的權限,指令格式:grant 權限,權限2,... on 資料庫名.資料表 to 使用者名@使用者的位址 identified by 密碼
grant select ,insert,create,drop on test.student to [email protected] identifiled by \'abc123\'
3、資料庫備份:mysqldump -h 主機名 -P 端口号 -u 使用者名 -p 密碼 databasename datatablename > out.sql
導出資料庫所有資料:mysqldump -u root -p 123456 test > out.sql
導出資料庫資料表資料:mysqldump -u root -p 123456 test student > out.sql
導出資料庫的表結構,不導出資料 mysqldump -u root -p --opt -d test > out.sql
導出資料而不導出結構 mysqldump -u root -p -t -d test > out.sql
導出特定表的結構 mysqldump -u root -p -d test --table student > out.sql
資料導入:
mysql test < out.sql
source out.sql
4、mysql 資料類型總結
MYSQL 資料類型 | 含義 |
整型 | |
tinyint | 1個位元組 |
smallint | 2個位元組 |
mediumint | 3個位元組 |
int(m) | 4個位元組 |
bigint(m) | 8個位元組 |
浮點數 | |
float(m,d) | 單精度浮點數 |
double(m,d) | 雙精度浮點數 |
字元串 | |
char(n) | 固定長度,最多255個字元 |
varchar(n) | 可變長度,最多65535個字元 |
tinytext | 可變長度,最多255個字元 |
text | 可變長度,最多65535個字元 |
mediumtext | 可變長度,最多2的24-1次方個字元 |
longtext | 可變長度,最多2的32-1次方個字元 |
二進制資料 | |
tinyblob | 0-255位元組 |
blod | |
mediumblod | |
long blod | |
日期時間類型 | |
date | 日期 2019-05-29 |
time | 時間 21:12:12 |
datetime | 日期時間 2019-05-29 21:12:12 |
timestamp | 自動存儲記錄修改時間,可以存放最後被修改的時間 |
5、MYSQL 關鍵字
MYSQL 關鍵字 | 含義 |
NULL | 資料列可以為NULL |
NOT NULL | 資料列不可以包含NULL值 |
DEFAULT | 預設值 |
PRIMARY KEY | 主鍵 |
AUTO_INCREMENT | 自動遞增,适用于整數類型· |
UNSIGNED | 無符号 |
CHARACTER SET name | 指定一個字元集 |
6、建立資料庫和資料表:create database 資料庫名稱 [其他選項]
7、使用資料庫:use 資料庫名
8、建立資料表: create table 表名(列聲明1,列聲明2,列聲明3...)
例子:建立學生記錄表,表有學号(ID),姓名(name),性别(sex),年齡(age), 入學日期(school_day)
create table student(
id int unsigned not null primary key,
name varchar(10) not null,
sex char(4) not null,
age tinyint unsigned not null ,
school_day datetime not null
)
9、資料表的增删改查操作
插入新資料:insert into student values(101,\'peter\',\'male\',\'17\',\'2019-5-29 12:12:00\')
mysql> select * from student;
+----------+------------+-----------+-----------+---------------------+
| id | name | sex | age | school_day |
+----------+------------+-----------+-----------+---------------------+
| 101 | peter | male | 17 | 2019-05-29 12:12:00 |
+----------+------------+-----------+-----------+---------------------+
更新資料記錄: update student set age=23 where id=101
删除操作:delete from student where age=18;
10、關于表格結構的操作
添加列:alter table student add address varchar(100) after age;
更改列的名稱:alter table student change address addr char(69);
删除列:alter table student drop addr;
重命名表格:alter table student rename students;
11、删除資料庫和資料表
删除表:drop table student;
删除資料庫:drop database test;