深圳本地做網(wǎng)站優(yōu)化師培訓(xùn)機(jī)構(gòu)
安裝與配置
官網(wǎng):
MySQL :: Download MySQL Installer
阿里云:
MySQL8 https://www.alipan.com/s/auhN4pTqpRp 點(diǎn)擊鏈接保存,或者復(fù)制本段內(nèi)容,打開「阿里云盤」APP ,無需下載極速在線查看,視頻原畫倍速播放。
1.將解壓文件解壓到你安裝的目錄:E:\mysql-8.0.11-winx64 不要放在有中文名字和空格的的目錄下.例如
2.在mysql-8.0.11-winx64文件夾下面新建一個(gè)my.ini文件和一個(gè)data文件夾,配置初始化的my.ini文件的文件,并寫入基本配置
myini文件內(nèi)容:
[mysqld]
# 設(shè)置3306端口
port=3306
# 設(shè)置mysql的安裝目錄
basedir=C:\Program Files\MySQL
# 設(shè)置mysql數(shù)據(jù)庫的數(shù)據(jù)的存放目錄
datadir=C:\Program Files\MySQL\Data
# 允許最大連接數(shù)
max_connections=200
# 允許連接失敗的次數(shù)。
max_connect_errors=10
# 服務(wù)端使用的字符集默認(rèn)為utf8mb4
character-set-server=utf8mb4
# 創(chuàng)建新表時(shí)將使用的默認(rèn)存儲(chǔ)引擎
default-storage-engine=INNODB
# 默認(rèn)使用“mysql_native_password”插件認(rèn)證
#mysql_native_password
default_authentication_plugin=mysql_native_password
[mysql]
# 設(shè)置mysql客戶端默認(rèn)字符集
default-character-set=utf8mb4
[client]
# 設(shè)置mysql客戶端連接服務(wù)端時(shí)默認(rèn)使用的端口
port=3306
default-character-set=utf8mb4
注意:配置文件中的路徑要和實(shí)際存放的路徑一致,注意路徑的反斜杠要改成斜杠
初始化MySQL:
在安裝時(shí),避免出錯(cuò)我們盡量全部使用管理員身份運(yùn)行CMD,否則在安裝時(shí)會(huì)報(bào)錯(cuò),會(huì)導(dǎo)致安裝失敗的情況
3.進(jìn)入mysql的bin目錄
4.在MySQL目錄下的bin目錄下執(zhí)行命令:
mysqld --initialize --console
5.安裝mysql服務(wù)
安裝mysql服務(wù)(注意,一定要是管理員權(quán)限)
執(zhí)行下面的命令:
進(jìn)入DOS命令后,對(duì)MySQL服務(wù)器開啟或暫停操作
net stop 服務(wù)名稱(mysql);
net start 服務(wù)名稱(mysql);
mysqld --install [服務(wù)名](服務(wù)名可以不加默認(rèn)為mysql)
成功了!
成功后有個(gè)標(biāo)識(shí),右鍵此電腦-服務(wù)-計(jì)算機(jī)管理 -服務(wù)和應(yīng)用程序
6.啟動(dòng)MySQL 服務(wù)
服務(wù)安裝成功之后通過命令net start mysql啟動(dòng)MySQL的服務(wù)
7.修改密碼
mysql的bin目錄下 進(jìn)行數(shù)據(jù)庫連接 mysql -u root -p
再輸入密碼 回車
有了mysql> 這個(gè)的時(shí)候 你就可以去改密碼了!
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
8.密碼修改成功后
exit;(退出mysql)
連接MySQL
相信大家都有的Navicat,小海豚等數(shù)據(jù)庫圖形化工具
OK了
MySQL語法:
SQL-DDL
數(shù)據(jù)庫
1.創(chuàng)建數(shù)據(jù)庫
直接創(chuàng)建:CREATE DATABASE 數(shù)據(jù)庫名;
CREATE DATABASE db1;
如果不存在則創(chuàng)建:CREATE DATABASE IF NOT EXISTS 數(shù)據(jù)庫名;
CREATE DATABASE if NOT EXISTS db2;
創(chuàng)建數(shù)據(jù)庫時(shí)并設(shè)置字符集:CREATE DATABASE 數(shù)據(jù)庫名 CHARACTER SET 字符集;
CREATE DATABASE db3 CHARACTER SET GBK;
2.查看數(shù)據(jù)庫
查看所有的數(shù)據(jù)庫:SHOW DATABASES;
SHOW DATABASES;
看某個(gè)數(shù)據(jù)庫的定義信息:SHOW CREATE DATABASE 數(shù)據(jù)庫名;
SHOW CREATE DATABASE db3;
查看正在使用的數(shù)據(jù)庫:SELECT DATABASE();
SELECT DATABASE();
切換數(shù)據(jù)庫: use 數(shù)據(jù)庫名;
USE db1;
3.修改
修改數(shù)據(jù)庫字符集:ALTER DATABASE 數(shù)據(jù)庫名 DEFAULT CHARACTER SET 字符集;
ALTER DATABASE db3 DEFAULT CHARACTER SET UTF8MB4;
4.刪除
刪除數(shù)據(jù)庫 DROP DATABASE 數(shù)據(jù)庫名;
DROP DATABASE db3;
數(shù)據(jù)庫中的表管理
1.創(chuàng)建表
CREATE TABLE [IF NOT EXISTS]表名( 字段名1 字段類型, 字段名2 字段類型, 字段名3 字段類型 );
CREATE TABLE student(
sno INT,
sname VARCHAR(10),
sgender CHAR(1),
birthday date
);
根據(jù)某個(gè)舊表的結(jié)構(gòu),創(chuàng)建一個(gè)新表:CREATE TABLE 新表名 LIKE 舊表名;
-- 復(fù)制表,只復(fù)制表結(jié)構(gòu)
CREATE TABLE student3 LIKE student2;
復(fù)制某個(gè)表中的所有的信息,包含數(shù)據(jù) :CREATE TABLE 新表名 查詢語句;
-- 復(fù)制表,包含表中的數(shù)據(jù)student
CREATE TABLE student4 SELECT * FROM student2;
2.查找
查看某個(gè)數(shù)據(jù)庫中的所有的表:SHOW TABLES;
SHOW TABLES;
查看某個(gè)表的結(jié)構(gòu)信息:DESC 表名;
DESC stu;
查看某個(gè)表的創(chuàng)建SQL語句 : SHOW CREATE TABLE 表名;
-- 查看表的創(chuàng)建信息
SHOW CREATE TABLE stu;
3.修改
給表中新增一列:ALTER TABLE 表名 ADD 列名 類型(長度);
-- 為已經(jīng)存在的表添加新列
ALTER TABLE student2 ADD birthday DATE;
修改已經(jīng)存在的列的數(shù)據(jù)類型:ALTER TABLE 表名 MODIFY 列名 新數(shù)據(jù)類型;
-- 修改已經(jīng)存在的列的數(shù)據(jù)類型
ALTER TABLE student2 MODIFY sname VARCHAR(20);
修改列名:ALTER TABLE 表名 CHANGE 舊列名 新列名 類型;
-- 修改列名
ALTER TABLE student2 CHANGE sgender gender CHAR(1);
刪除列:ALTER TABLE 表名 DROP 列名;
-- 刪除列
ALTER TABLE student2 DROP birthday;
修改表名:RENAME TABLE 表名 TO 新表名;
-- 修改表名
RENAME TABLE student2 TO stu;
修改字符集: ALTER TABLE 表名 character set 字符集;
-- 修改表的字符集
ALTER TABLE stu CHARACTER SET GBK;
4.刪除
直接刪除表: DROP TABLE 表名;
DROP TABLE copy_emp;
先判斷是否存在再刪除: DROP TABLE IF EXISTS 表名;
-- 判斷表是否存在,如果不存在則刪除
DROP TABLE if EXISTS student4;
5.截?cái)啾?/h5>
TRUNCATE 【TABLE】 表名 ;刪除表和表中的數(shù)據(jù),重新創(chuàng)建的表和原來的表的結(jié)構(gòu)一樣
TRUNCATE TABLE copy_emp;
SQL-DML
1.添加數(shù)據(jù)
--添加數(shù)據(jù),單行添加部分列
INSERT INTO dept(deptno,dname) VALUES (1,'設(shè)計(jì)部');
INSERT INTO dept(deptno,dname) VALUES (2,'研發(fā)部');--添加數(shù)據(jù),單行添加所有列
INSERT INTO dept(deptno,dname,location) VALUES (3,'研發(fā)部','西安');
INSERT INTO dept(deptno,dname,location) VALUES (4,'研發(fā)部',NULL);
INSERT INTO dept VALUES (5,'研發(fā)部',NULL);-- 添加多行數(shù)據(jù)
INSERT INTO `dept` VALUES(6,'測(cè)試部','上海'),(7,'人事部','武漢');