【Conclusion】MySQL的安裝和使用

MySQL使用

由於數據庫實驗用到了MySQL,這裏對如今已經涉及到的MySQL部分操做作一個簡單的小結。mysql

一、安裝MySQL

MySQL的官網下載對應本身OS平臺的MySQL安裝文件,有在線安裝和離線安裝包兩種,因爲服務器在國外,若是網絡不是太好的話推薦選擇離線安裝包。

安裝的話就不說了,網上教程一大把,我的PC的話,通常選擇開發者模式安裝就行了。這裏主要說一下安裝後的配置,給本身作個記錄(雖然網上也有不少,可是本身作個總結省得每次都去找)。linux

機器環境:
OS: Windows 10(1703) 64bit

第一步:就是配置MySQL的默認字符編碼,新版的MySQL的配置文件my.ini不在安裝目錄下了,而是在「C:\ProgramData\MySQL\MySQL Server 5.7」下,固然這是在個人機器上(我是以默認目錄安裝的)。sql

  1. 首先要作的就是備份配置文件咯,萬一一不當心弄錯了配置,MySQL服務啓動不起來,又不知道怎麼改回去,那豈不是很麻煩(雖然有官方文檔嘛,可是那麼又臭又長的英文我可不想花大量時間去查)。
  2. 備份好原來的配置文件後,用記事本打開my.ini,按以下所示添加相應的語句:
[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
character-set-sever=utf8

第二步:修改數據庫存放位置。一樣在my.ini下找到[mysqld],而後在這個下方找到basedir和datadir兩個選項,其中basedir是你的MySQL的安裝位置,datadir就是MySQL的數據庫的存放位置了。
若是你使用完整的安裝文件安裝,切記不要改動basedir,不然你的MySQL服務啓動不起來的。固然若是是免安裝版,就根據你的實際安裝位置更改了。
你能夠將數據庫的存放位置放到任何你喜歡的位置,而後修改datadir爲你肯定的目錄便可:數據庫

datadir="D:/DevelWorks/MySQL/Data/"

說實話這裏有個惱火的地方就是在Windows的環境下有時會由於路徑分隔符(/或\)的不一樣致使服務啓動失敗,這個本身多試幾回,不一樣的環境有多是「/」也有多是「\」。

通常來講配置這兩個就差很少了,若是須要其餘配置,看看官方文檔就行了。
在Windows下啓動MySQL:服務器

以管理員身份打開命令提示符:
# net start MySQL57    啓動服務
# net stop MySQL57     關閉服務

至於linux下的配置由於沒時間也沒有去搗鼓,估計配置方式也差很少,不一樣的在於配置文件的存放位置。網絡

二、MySQL使用

登陸:mysql -uroot -p
回車後會提示你輸入密碼,正確輸入密碼後回車就能夠登陸了。建議不要在-p參數後面直接寫上密碼,由於這裏是明文顯示的。ui

退出:exit;或quit;或\q;編碼

注意:每一個MySQL的命令後面都以英文分號(;)結束。code

查看數據庫:
show databases;orm

選擇(切換)數據庫:
use [數據庫名];

查看數據表:
show tables;

描述表結構:
describe `表名`;
或:show columns from `表名`;

建立數據庫:
create database `database-name`;

刪除數據庫:
drop database `數據庫名`;

建立表:
create table `table-name`(
`column-name`, [data-type], [(表級)完整性約束條件],
.
.
.
[表級完整性約束條件]
);
若是完整性約束條件涉及多個屬性列,則必須定義在表級完整性上,不然既能夠定義在列級,也能夠定義在表級。

刪除表:
drop table `表名`;

插入記錄(元組):
insert into `表名` values(屬性1的值,屬性2的值,...,屬性n的值);
insert into `表名`(屬性1,屬性2,...,屬性x) values(屬性1的值,屬性2的值,...,屬性x的值);

導入sql文件:
source [文件路徑];

查看錶內容:
select * from `表名`;(查看全部內容)
select * from `表名` limit n;(僅查看前n條記錄)
select `屬性1`, `屬性2`, ..., `屬性n` from `表名`;(查看指定屬性列的內容)

更新表:
ALTER TABLE <表名>
[CHANGE COLUMN <列名> <列名> <數據類型> [ <列級完整性約束條件> ] ,]
[ADD COLUMN <列名> <數據類型> [ <列級完整性約束條件> ] ,]
[ADD <表級完整性約束條件> ,]
[DROP COLUMN <列名> ,]
[DROP <完整性約束條件> ]

重命名錶:
rename table `old-table-name` to `new-table-name`;

三、其餘

  1. 在作實驗的時候有時出現"ERROR 1064 (42000)"這個語法錯誤,上網查瞭如下,原來是由於可能在SQL語句或者MySQL命令中使用了MySQL中的保留字,從而引起的語法錯誤,在這種狀況下,應將保留字使用符號包含,避免SQL語句的解析出錯。所以,在書寫SQL語句時,應儘可能將所定義變量(如數據庫名字,表名等)使用符號包含。

  2. 查看MySQL數據庫中每一個表的佔用空間:
    在MySQL中的information_schema數據庫中有一個TABLES表,這個表的主要字段分別是:
TABLE_SCHEMA : 數據庫名
TABLE_NAME:表名
ENGINE:所使用的存儲引擎
TABLES_ROWS:記錄數
DATA_LENGTH:數據大小
INDEX_LENGTH:索引大小
--
SQL:
SELECT TABLE_NAME,DATA_LENGTH+INDEX_LENGTH,TABLE_ROWS FROM TABLES WHERE TABLE_SCHEMA='數據庫名' AND TABLE_NAME='表名';

【參考】MySQL必知必會。


本文由博主創做和發表,轉載請註明做者及出處!

powered by exRunner If you forward it, please specify the author and source.

相關文章
相關標籤/搜索