一:通過終端進入數(shù)據(jù)庫模式:
1:沒有配置環(huán)境變量:進入/usr/local/mysql/
目錄下,執(zhí)行:
mysql -u root -p
2: 配置過環(huán)境變量褒脯,在任意目錄下都可以直接執(zhí)行:
mysql -u root -p
如果數(shù)據(jù)開啟就會進入mysql數(shù)據(jù)庫模式
二:配置數(shù)據(jù)庫的環(huán)境變量:
1便瑟、首先我們需要創(chuàng)建一個 .bash_profile 文件(不要掉了文件名前面的 . 號),命令如下:
touch .bash_profile
2憨颠、創(chuàng)建完成后胳徽,用編輯器vim .bash_profile
打開這個文件,添加下面的內容:
PATH = /usr/local/mysql/bin:$PATH
export PATH
保存后退出
3爽彤、然后使用source命令更新系統(tǒng)環(huán)境變量配置养盗,命令如下:
source .bash_profile
4、更新完畢后使用
echo $PATH
查看所有環(huán)境變量适篙,檢查是否包含了我們剛剛配置的環(huán)境變量地址往核,如果包含了,說明環(huán)境變量配置成功了
三:退出數(shù)據(jù)庫模式:
兩種方式:exit
或者 quit
四:數(shù)據(jù)庫的常用命令
1嚷节、Mysql 創(chuàng)建數(shù)據(jù)庫:
方式一(默認編碼聂儒,不支持中文):
CREATE DATABASE 數(shù)據(jù)庫名;
方式二(直接設置編碼):
CREATE DATABASE 數(shù)據(jù)庫名 charset utf8;
方式三(全模式,最好使用這種方式):
CREATE DATABASE IF NOT EXISTS my_db default charset utf8 COLLATE utf8_general_ci;
2硫痰、顯示當前數(shù)據(jù)庫服務器中的數(shù)據(jù)庫列表:
show databases;
3衩婚、切換或使用某個數(shù)據(jù)庫:
use 數(shù)據(jù)庫名;
4、創(chuàng)建數(shù)據(jù)庫表格:
CREATE TABLE 表名 (字段名 VARCHAR(20), 字段名 CHAR(1));
5效斑、 查詢數(shù)據(jù)中都有哪些表格
mysql> SHOW TABLES;
6非春、刪除數(shù)據(jù)庫:
DROP DATABASE 庫名;
// 刪除時添加判斷
drop database if exists school;
7、刪除數(shù)據(jù)表:
mysql> DROP TABLE 表名;
8缓屠、將表中記錄清空:
mysql> DELETE FROM 表名;
9奇昙、顯示數(shù)據(jù)表結構:
mysql> DESCRIBE MYTABLE;
10、往表中插入記錄:
方式一:這種方式需要對表格的每一列都插入數(shù)據(jù)
mysql> INSERT INTO 表名 VALUES ("hyq","M");
方式二:這種方式只對指定的列插入數(shù)據(jù)就可以
mysql> INSERT INTO 表名 (name,sex) VALUES ("hyq","M");
11敌完、更新表中數(shù)據(jù):
mysql-> UPDATE 表名 SET 字段名1='a',字段名2='b' WHERE 字段名3='c';
SET 后為需要更新的字段储耐,WHERE 后面是需要更新記錄的匹配條件
12、用文本方式將數(shù)據(jù)裝入數(shù)據(jù)表中:
mysql> LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE 表名;
13滨溉、導入.sql文件命令:
mysql> USE 數(shù)據(jù)庫名;
mysql> SOURCE d:/mysql.sql;
14什湘、命令行修改root密碼:
mysql> UPDATE mysql.user SET password=PASSWORD('新密碼') WHERE User='root';
mysql> FLUSH PRIVILEGES;
15长赞、修改數(shù)據(jù)庫的編碼格式
alter database 數(shù)據(jù)庫名 character set utf8;
16、創(chuàng)建數(shù)據(jù)庫時禽炬,指定數(shù)據(jù)庫的字符編碼
mysql> create database 數(shù)據(jù)庫名 character set utf8;
17涧卵、查看mysql數(shù)據(jù)庫的字符編碼
mysql> show variables like 'character%'; //查詢當前mysql數(shù)據(jù)庫的所有屬性的字符編碼
18、修改指定表格的編碼格式
alter table 表格名 default character set utf8;
19腹尖、修改表格中指定字段的編碼格式
alter table 表格名 change 字段名 字段名 類型 character set utf8;
五:對表格結構進行修改
1、修改數(shù)據(jù)庫字段類型:
mysql> alter table 表名 modify column 字段名 類型;
這里注意:如果表格中已經有數(shù)據(jù)伐脖,修改的新類型必須滿足已有數(shù)據(jù)热幔,否者修改失敗,如果需要強制修改讼庇,需要清空數(shù)據(jù)才可以修改
2绎巨、修改數(shù)據(jù)庫字段的名稱:
alter table 表名 CHANGE 字段舊名 字段新名 類型;
例如:alter table user CHANGE new1 new4 int;
批量修改
alter table 表 change 修改前字段名 修改后字段名稱 int(11) not null,
change 修改前字段名 修改后字段名稱 int(11) not null,
change 修改前字段名 修改后字段名稱 int(11) not null,
change 修改前字段名 修改后字段名稱 int(11) not null,
change 修改前字段名 修改后字段名稱 int(11) not null
3、添加字段:
// 直接添加一個新的字段
alter table user add COLUMN 字段名 類型
//增加一個字段蠕啄,默認為空
alter table user add COLUMN 字段名 VARCHAR(20) DEFAULT NULL;
//增加一個字段场勤,默認不能為空
alter table user add COLUMN 字段名 VARCHAR(20) NOT NULL;
批量增加字段:方式一:
bagin; //事務開始
alter table em_day_data add f_day_house7 int(11);
alter table em_day_data add f_day_house8 int(11);
alter table em_day_data add f_day_house9 int(11);
alter table em_day_data add f_day_house10 int(11);
commit; //提交事務,事務結束
批量添加字段:方式二:
alter table 表名 add (字段1 類型(長度),字段2 類型(長度),字段3 類型(長度));
alter table em_day_data add (f_day_house11 int(11),f_day_house12 int(11),f_day_house13 int(11));
4歼跟、刪除字段:
//刪除一個字段
alter table 表名 DROP COLUMN 字段名;
5和媳、為數(shù)據(jù)庫表格添加注釋
// 可以為表添加注釋
ALTER TABLE table_name
COMMENT '注釋';
// 為字段添加注釋,同樣適用于修改
ALTER TABLE table_name
CHANGE old_name
new_name
type(longth) UNSIGNED NULL DEFAULT NULL COMMENT '注釋'
6哈街、調整字段順序:
alter table 表名
change 字段名 新字段名 字段類型 默認值 after 字段名(跳到哪個字段之后)
alter table ap[ps](http://www.111cn.net/fw/photo.html)tore_souapp_app_androidmarket;
change getPriceCurrency getPriceCurrency varchar(50) default null AFTER getPrice;
7留瞳、修改表格名稱
方法一:mysql> alter table 舊表名 rename to 新表名;
方法二:mysql> alter table 舊表名 rename AS 新表名;
三、一個建庫和建表以及插入數(shù)據(jù)的實例
drop database if exists school; //如果存在sudu則刪除
create database sudu; //建立庫sudu
use school; //打開庫sudu
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('','allen','飛數(shù)科技1','2005-10-10');
insert into teacher values('','jack','飛數(shù)科技2','2005-12-23');如果你在mysql提示符鍵入上面的命令也可以骚秦,但不方便調試她倘。
(1)你可以將以上命令原樣寫入一個文本文件中,假設為sudu.sql作箍,然后復制到c:\下硬梁,并在DOS狀態(tài)進入目錄\mysql\bin,然后鍵入以下命令:
mysql -uroot -p密碼 < c:\sudu.sql
如果成功胞得,空出一行無任何顯示;如有錯誤荧止,會有提示。(以上命令已經調試懒震,你只要將//的注釋去掉即可使用)罩息。
(2)或者進入命令行后使用 mysql> source c:\sudu.sql; 也可以將sudu.sql文件導入數(shù)據(jù)庫中。
四个扰、將文本數(shù)據(jù)轉到數(shù)據(jù)庫中
1瓷炮、文本數(shù)據(jù)應符合的格式:字段數(shù)據(jù)之間用tab鍵隔開,null值用\n來代替.例:
3 rose 飛數(shù)科技1 1976-10-10
4 mike 飛數(shù)科技2 1975-12-23
假設你把這兩組數(shù)據(jù)存為速度sudu.txt文件递宅,放在c盤根目錄下娘香。
2苍狰、數(shù)據(jù)傳入命令 load data local infile "c:\sudu.txt" into table 表名;
注意:你最好將文件復制到\mysql\bin目錄下,并且要先用use命令打表所在的庫烘绽。
五淋昭、備份數(shù)據(jù)庫:(命令在DOS的\mysql\bin目錄下執(zhí)行)
1.導出整個數(shù)據(jù)庫
導出文件默認是存在mysql\bin目錄下
mysqldump -u 用戶名 -p 數(shù)據(jù)庫名 > 導出的文件名
mysqldump -u user_name -p123456 database_name > outfile_name.sql
2.導出一個表
mysqldump -u 用戶名 -p 數(shù)據(jù)庫名 表名> 導出的文件名
mysqldump -u user_name -p database_name table_name > outfile_name.sql
3.導出一個數(shù)據(jù)庫結構
mysqldump -u user_name -p -d --add-drop-table database_name > outfile_name.sql
-d 沒有數(shù)據(jù) --add-drop-table 在每個create語句之前增加一個drop table
4.帶語言參數(shù)導出
mysqldump -uroot -p --default-character-set=latin1 --set-charset=gbk --skip-opt database_name > outfile_name.sql
學習文章:
https://www.cnblogs.com/jiangxiaobo/p/7089345.html
https://www.cnblogs.com/wenlj/p/5258102.html