1、Ubuntu18.04 安裝 MySQL
安裝MySQL:
sudo apt-get update
sudo apt-get install mysql-server
sudo apt-get install mysql-client
sudo apt-get install libmysqlclient-dev
測試MySQL:
在XShell中诡渴,輸入語句sudo mysql -u root -p
回車捌刮,輸入用于密碼和數(shù)據(jù)庫密碼套蒂,登錄數(shù)據(jù)庫与境;
MySQL基本操作(在XShell中操作蕊退,實(shí)際很少會在服務(wù)器上直接操作)
以root用戶身份登錄服務(wù)器中的MySQL:
sudo mysql -u root –p
服務(wù)啟動和關(guān)閉:
service mysql start
和service mysql stop
-
查看mysql用戶(安裝MySQL時(shí)郊楣,系統(tǒng)自動創(chuàng)建該用戶)的進(jìn)程
ps -u mysql
PID TTY TIME CMD
7586 ? 00:00:50 mysqld 守護(hù)進(jìn)程
如果登錄期間發(fā)生異常,無法登錄:使用root殺死m(xù)ysql的后臺進(jìn)程
kill -9 PID
修改密碼:
mysql> set password=password('123456'); 將密碼設(shè)置為:123456
退出登錄:
quit/exit
2瓤荔、對數(shù)據(jù)庫的增刪改查
登錄數(shù)據(jù)庫中(sudo mysql -uboot -p
)后:
創(chuàng)建數(shù)據(jù)庫:
create database dbdj;
默認(rèn)字符集不帶中文净蚤;刪除數(shù)據(jù)庫:
drop database lajidb;
可用語句
alter database dbdj character set utf8;
改為包含中文查看數(shù)據(jù)庫:
show databases
;查看某個(gè)數(shù)據(jù)庫的創(chuàng)建方式:
show create database dbdj;
3、對表的增刪改查
對表本身進(jìn)行操作:創(chuàng)建输硝,查看今瀑,修改,刪除
3.1 創(chuàng)建表
選擇數(shù)據(jù)庫:
use mydb2;
創(chuàng)建表:
create table t1 (id int, name varchar(30))点把;
創(chuàng)建一個(gè)員工表:
create table employee(empno int, ename varchar(20), sal int);
mysql中的數(shù)據(jù)類型:
bit 1位 可以指定位數(shù)橘荠,如:bit(3)
int 2字節(jié) 可以指定最大位數(shù),如:int<4> 最大為4位的整數(shù)
float 2個(gè)字節(jié) 可以指定最大的位數(shù)和最大的小數(shù)位數(shù)郎逃,如:float<5,2> 最大為一個(gè)5位的數(shù)哥童,小數(shù)位最多2位
double 4個(gè)字節(jié) 可以指定最大的位數(shù)和最大的小數(shù)位數(shù),如:float<6,4> 最大為一個(gè)6位的數(shù)衣厘,小數(shù)位最多4位
char 必須指定字符數(shù),如char(5) 為不可變字符 即使存儲的內(nèi)容為'ab',也是用5個(gè)字符的空間存儲這個(gè)數(shù)據(jù)
varchar 必須指定字符數(shù),如varchar(5) 為可變字符 如果存儲的內(nèi)容為'ab',占用2個(gè)字符的空間如蚜;如果為'abc',則占用3個(gè)字符的空間
text: 大文本(大字符串)
blob:二進(jìn)制大數(shù)據(jù) 如圖片,音頻文件影暴,視頻文件
date: 日期 如:'1921-01-02'
datetime: 日期+時(shí)間 如:'1921-01-02 12:23:43'
timeStamp: 時(shí)間戳错邦,自動賦值為當(dāng)前日期時(shí)間
3.2 查看表
查看所有的表:
show tables;
查看指定表的創(chuàng)建語句:
show create table employee;
顯示指定表的結(jié)構(gòu):
desc employee;
3.3 修改表
更改表名:
rename table employee to worker;
增加一個(gè)字段:
alter table employee add column height double;
(column關(guān)鍵字在Oracle中,添加則語法錯(cuò)誤)修改一個(gè)字段:
alter table employee modify column height float;
修改字段名:
alter table employee change column height height1 float;
刪除一個(gè)字段:
alter table employee drop column height1;
修改表的字符集:
alter table employee character set gbk;
3.4 刪除表
- 刪除employee表:
drop table employee;
(MySQL中會直接刪除型宙,不能使用purge撬呢,添加會出現(xiàn)語法錯(cuò)誤)
注意:字段不區(qū)分大小寫,庫名大小寫敏感
4妆兑、對數(shù)據(jù)的增刪改查
4.1 create數(shù)據(jù)
創(chuàng)建一個(gè)員工表魂拦,新建employee表并向表中添加一些記錄:
create table employee(
?
id int,
?
name varchar(20),
?
sex int,
?
birthday date,
?
salary double,
?
entry_date date,
?
resume text
?
);
insert into employee values(1,'張三',1,'1983-04-27',15000,'2012-06-24','一個(gè)大牛');
insert into employee(id,name,sex,birthday,salary,entry_date,resume) values(2,'李四',1,'1984-02-22',10000,'2012-07-24','一個(gè)中牛');
insert into employee(id,name,sex,birthday,salary,entry_date,resume) values(3,'王五',0,'1985-08-28',7000,'2012-08-24','一個(gè)小蝦');
4.2 update數(shù)據(jù)
將所有員工薪水都增加500元:
update employee set salary=salary+500;
將王五的員工薪水修改為10000元,resume改為也是一個(gè)中牛:
update employee set salary=10000, resume='也是一個(gè)中牛' where name='王五';
4.3 delete數(shù)據(jù)
刪除表中姓名為王五的記錄:
delete from employee where name='王五';
【注意from不能省略】刪除表中所有記錄:
delete from employee;
使用truncate刪除表中記錄:
truncate employee;
--無條件 效率高
4.4 retrieve數(shù)據(jù)
查看表中全部內(nèi)容:
select * from employee;
按需查找:
select id, name as "名字", salary "月薪", salary*12 年薪 from employee where id >=2;