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 peter@192.168.15.12 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;