python之MySQL資料庫

來源:互聯網
上載者:User

標籤:tool   ...   code   shu   character   master   檔案中   truncate   kill   

mysql安裝與下載

a:官網下載mysql安裝程式b:安裝mysql服務端c:安裝mysql用戶端d:用戶端串連服務端e:通過用戶端向伺服器發送命令,執行對資料庫檔案的增刪改差操作。 

 Windows版安裝 

#1.下載:MySQL Community Server 5.7.20    https://dev.mysql.com/downloads/mysql/#2.解壓將官網下載的解壓包 解壓到指定目錄(例如 D://mysql-5.7.20-winx64)#3.添加環境變數【右鍵電腦】--》【屬性】--》【進階系統設定】--》【進階】--》【環境變數】--》【在第二個內容框中找到 變數名為Path 的一行,雙擊】 --> 【將MySQL的bin目錄路徑追加到變值值中,用 ; 分割】C:\Program Files (x86)\Parallels\Parallels Tools\Applications;d:\mysql-5.7.16-winx64\bin#4.初始化mysqld --initialize-insecure#5.啟動mysql服務mysqld#6.串連mysql服務mysql -uroot -p  斷行符號,有密碼輸入密碼,沒有繼續斷行符號解壓方式安裝解壓方式安裝
解壓方式安裝
ps:製作服務必須使用全路徑方式# 製作MySQL的Windows服務,在終端執行此命令:"c:\mysql-5.7.16-winx64\bin\mysqld" --install# 移除MySQL的Windows服務,在終端執行此命令:"c:\mysql-5.7.16-winx64\bin\mysqld" --remove‘# 啟動MySQL服務net start mysql(後面不加分號)# 關閉MySQL服務net stop mysql(後面不加分號)
製作服務

 

1.建立資料庫

  create database 庫名;

#建立一個名字為 db_name 的資料庫,並指定當前庫的編碼集為utf8CREATE DATABASE db_name charset utf8;

2.查資料庫

  use 庫名;

#查詢目前使用者下所有資料庫show databases;#查看建立資料庫的資訊show create database db_name;#查詢當前操作所在的資料庫名稱select database();

3.查詢當前庫下所有的表

  show tables 顯示庫中所有的表

  show databases顯示所有資料庫

4.刪除

  drop database 庫名; 刪除資料庫

什麼是SQL?

上面咱們介紹過資料庫的組成部分,其中資料庫管理系統可以接收一些命令,對資料檔案進行添加、刪除、修改、查詢等操作。那麼這些命令就是 SQL .

  SQL:(Structured Query Language)是結構化查詢語言 (SQL)縮寫。是一門專門與資料庫管理系統打交道的語言。

  SQL語言:是關係型資料庫的標準語言, 其主要用於存取資料,查詢資料,更新資料和管理資料庫系統等操作。

  具體可以把SQL分為4個部分:

    資料控制語言 ( DCL): 主要用於控制使用者的存取權限。其中GRANT語句用於給使用者增加許可權,REVOKE語句用於收回使用者的許可權

    資料定義語言 (Data Definition Language)(DDL):DROP、CREATE、ALTER等語句;資料庫定義語言。主要用於定義資料庫,表,視圖,索引和觸發器等。CREATE語句主要用於建立資料庫,建立表,建立視圖。ALTER語句主要用於修改表的定義,修改視圖的定義。DROP語句主要用於刪除資料庫,刪除表和刪除視圖等。

    資料操作語言(DML):INSERT、UPDATE、DELETE語句;資料庫操作語言。主要用於插入資料,更新資料,刪除資料。INSERT語句用於插入資料,UPDATE語句用於更新資料,DELETE語句用於刪除資料.

    資料查詢語言(DQL):SELECT語句。主要用於查詢資料。

#1. 操作檔案夾        增:create database db1 charset utf8;        查:show databases;        改:alter database db1 charset latin1;        刪除: drop database db1;#2. 操作檔案    先切換到檔案夾下:use db1        增:create table t1(id int,name char);        查:show tables        改:alter table t1 modify name char(3);              alter table t1 change name name1 char(2);        刪:drop table t1;    #3. 操作檔案中的內容/記錄        增:insert into t1 values(1,‘egon1‘),(2,‘egon2‘),(3,‘egon3‘);        查:select * from t1;        改:update t1 set name=‘sb‘ where id=2;        刪:delete from t1 where id=1;        清空表:            delete from t1; #如果有自增id,新增的資料,仍然是以刪除前的最後一樣作為起始。            truncate table t1;資料量大,刪除速度比上一條快,且直接從零開始,            auto_increment 表示:自增            primary key 表示:約束(不能重複且不可為空);加速尋找....
#1. 操作檔案夾        增:create database db1 charset utf8;        查:show databases;        改:alter database db1 charset latin1;        刪除: drop database db1;#2. 操作檔案    先切換到檔案夾下:use db1        增:create table t1(id int,name char);        查:show tables        改:alter table t1 modify name char(3);              alter table t1 change name name1 char(2);        刪:drop table t1;    #3. 操作檔案中的內容/記錄        增:insert into t1 values(1,‘egon1‘),(2,‘egon2‘),(3,‘egon3‘);        查:select * from t1;        改:update t1 set name=‘sb‘ where id=2;        刪:delete from t1 where id=1;        清空表:            delete from t1; #如果有自增id,新增的資料,仍然是以刪除前的最後一樣作為起始。            truncate table t1;資料量大,刪除速度比上一條快,且直接從零開始,            auto_increment 表示:自增            primary key 表示:約束(不能重複且不可為空);加速尋找
可以由字母、數字、底線、@、#、$區分大小寫唯一性不能使用關鍵字如: CREATE SELECT不能單獨使用數字最長128位
命名規範

使用者權限

建立使用者    create user ‘使用者名稱‘@‘IP地址‘ identified by ‘密碼‘;刪除使用者    drop user ‘使用者名稱‘@‘IP地址‘;修改使用者    rename user ‘使用者名稱‘@‘IP地址‘; to ‘新使用者名稱‘@‘IP地址‘;
使用者管理
#建立新使用者create user ‘alex‘@‘localhost‘ identified by ‘123456‘;#授權方式一:為alex授權 db1資料庫下的所有表的 查詢.更新.修改許可權grant select,update,delete on db1.*  to ‘alex‘@‘localhost‘;#授權方式二:為alex 授權 所有庫的所有許可權(除grant許可權外)grant all privileges on *.*  to ‘alex‘@‘localhost‘;#重新整理使用者權限flush privileges;
建立使用者及授權樣本
all privileges  除grant外的所有許可權            select          僅查許可權            select,insert   查和插入許可權            ...            usage                   無存取權限            alter                   使用alter table            alter routine           使用alter procedure和drop procedure            create                  使用create table            create routine          使用create procedure            create temporary tables 使用create temporary tables            create user             使用create user、drop user、rename user和revoke  all privileges            create view             使用create view            delete                  使用delete            drop                    使用drop table            execute                 使用call和預存程序            file                    使用select into outfile 和 load data infile            grant option            使用grant 和 revoke            index                   使用index            insert                  使用insert            lock tables             使用lock table            process                 使用show full processlist            select                  使用select            show databases          使用show databases            show view               使用show view            update                  使用update            reload                  使用flush            shutdown                使用mysqladmin shutdown(關閉MySQL)            super                   使用change master、kill、logs、purge、master和set global。還允許mysqladmin調試登陸            replication client      伺服器位置的訪問            replication slave       由複製從屬使用
許可權列表
 1 方式一: mysqladmin 命令 2  3  4 mysqladmin -u使用者名稱 -p密碼 password 新密碼 5 方式二: 直接設定使用者密碼  6  7  8 set password for ‘使用者名稱‘@‘IP‘ = password(‘新密碼‘); 9              10 flush privileges;11 方式三:修改mysql庫下的user表12 13 14 5.7版本修改密碼方式:15 update mysql.user set authentication_string=password(‘新密碼‘) where user= ‘使用者名稱‘          16 flush privileges; -- 重新整理許可權17              18 5.6 版本19 update mysql.user set password = password(‘新密碼‘) where user= ‘使用者名稱‘20 flush privileges; -- 重新整理許可權21 六.忘記密碼
修改密碼
在忘記root密碼的時候,可以這樣: #1.首先開啟cmd 視窗,關閉mysql服務    net stop mysql #2.然後跳過許可權檢查,啟動mysql,輸入命令    mysqld --skip-grant-tables #3.重新開啟一個新的cmd視窗,啟動用戶端(已跳過許可權檢查,可以直接登入)    mysql #4.直接進來,修改密碼update mysql.user set authentication_string=password(‘123456‘) where user=‘root‘; #5. 重新整理許可權flush privileges;
忘記密碼

查詢字元編碼

SHOW VARIABLES LIKE ‘char%‘;
#修改方法:#1. 建立my.ini檔案,放在mysql根路徑下#2. 在該檔案中添加以下內容即可:#3.添加此檔案後需要重新啟動服務,以保證此檔案生效------------------------------------------------------------[client]default-character-set=utf8[mysql]#設定mysql用戶端預設字元集default-character-set=utf8[mysqld]#設定3306連接埠port = 3306#允許最大串連數max_connections=200#服務端使用的字元集預設為8位元編碼的latin1字元集character-set-server=utf8#建立新表時將使用的預設儲存引擎default-storage-engine=INNODB#解決mysql在執行sql語句後出現1055錯誤,sql_mode = only_full_group_by不相容sql_mode=‘NO_ENGINE_SUBSTITUTION‘亂碼已死
亂碼已死

 

python之MySQL資料庫

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.