即興隨筆之資料庫

来源:https://www.cnblogs.com/xzqpy/archive/2018/12/17/10133218.html
-Advertisement-
Play Games

一、概述 1、什麼是資料庫 ? 答:數據的倉庫,如:在ATM的示例中我們創建了一個 db 目錄,稱其為資料庫 2、什麼是 MySQL、Oracle、SQLite、Access、MS SQL Server等 ? 答:他們均是一個軟體,都有兩個主要的功能: a. 將數據保存到文件或記憶體 b. 接收特定的 ...


 

一、概述

1、什麼是資料庫 ?
 答:數據的倉庫,如:在ATM的示例中我們創建了一個 db 目錄,稱其為資料庫

2、什麼是 MySQL、Oracle、SQLite、Access、MS SQL Server等 ?
 答:他們均是一個軟體,都有兩個主要的功能:

  • a. 將數據保存到文件或記憶體
  • b. 接收特定的命令,然後對文件進行相應的操作

    PS:如果有了以上軟體,無須自己再去創建文件和文件夾,而是直接傳遞 命令 給上述軟體,讓其來進行文件操作,他們統稱為資料庫管理系統(DBMS,Database Management System)

3、什麼是SQL ?
  SQL是一種專門用來與資料庫通信的語言。

二、下載安裝

MySQL是一個關係型資料庫管理系統,由瑞典MySQL AB 公司開發,目前屬於 Oracle 旗下公司。MySQL 最流行的關係型資料庫管理系統,在 WEB 應用方面MySQL是最好的 RDBMS (Relational Database Management System,關係資料庫管理系統) 應用軟體之一。

想要使用MySQL來存儲並操作數據,則需要做幾件事情:
  a. 安裝MySQL服務端
  b. 安裝MySQL客戶端
  b. 【客戶端】連接【服務端】
  c. 【客戶端】發送命令給【服務端MySQL】服務的接受命令並執行相應操作(增刪改查等)

 

Window版本

1、下載

下載
        http://dev.mysql.com/downloads/mysql/
安裝
        windows:
            點點點
        Linux:
            yum install mysql-server
        Mac:
            點點點

 

   

2、解壓

如果想要讓MySQL安裝在指定目錄,那麼就將解壓後的文件夾移動到指定目錄,如:C:\mysql-5.7.16-winx64

3、初始化

MySQL解壓後的 bin 目錄下有一大堆的可執行文件,執行如下命令初始化數據

 

4、啟動MySQL服務

執行命令從而啟動MySQL服務

+ View Code?
1 2 3 4 5 # 進入可執行文件目錄 cd c:\mysql-5.7.16-winx64\bin   # 啟動MySQL服務 mysqld

5、啟動MySQL客戶端並連接MySQL服務

由於初始化時使用的【mysqld --initialize-insecure】命令,其預設未給root賬戶設置密碼

+ View Code?
1 2 3 4 5 6 7 # 進入可執行文件目錄 cd c:\mysql-5.7.16-winx64\bin   # 連接MySQL伺服器 mysql -u root -p   # 提示請輸入密碼,直接回車

輸入回車,見下圖表示安裝成功:

到此為止,MySQL服務端已經安裝成功並且客戶端已經可以連接上,以後再操作MySQL時,只需要重覆上述4、5步驟即可。但是,在4、5步驟中重覆的進入可執行文件目錄比較繁瑣,如想日後操作簡便,可以做如下操作。

a. 添加環境變數

將MySQL可執行文件添加到環境變數中,從而執行執行命令即可

+ View Code?
1 2 3 4 【右鍵電腦】--》【屬性】--》【高級系統設置】--》【高級】--》【環境變數】--》【在第二個內容框中找到 變數名為Path 的一行,雙擊】 --> 【將MySQL的bin目錄路徑追加到變值值中,用 ; 分割】   如: C:\Program Files (x86)\Parallels\Parallels Tools\Applications;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Python27;C:\Python35;C:\mysql-5.7.16-winx64\bin

如此一來,以後再啟動服務並連接時,僅需:

+ View Code?
1 2 3 4 5 # 啟動MySQL服務,在終端輸入 mysqld   # 連接MySQL服務,在終端輸入: mysql -u root -p

b. 將MySQL服務製作成windows服務

上一步解決了一些問題,但不夠徹底,因為在執行【mysqd】啟動MySQL伺服器時,當前終端會被hang住,那麼做一下設置即可解決此問題:

+ View Code?
1 2 3 4 5 # 製作MySQL的Windows服務,在終端執行此命令: "c:\mysql-5.7.16-winx64\bin\mysqld" --install   # 移除MySQL的Windows服務,在終端執行此命令: "c:\mysql-5.7.16-winx64\bin\mysqld" --remove

註冊成服務之後,以後再啟動和關閉MySQL服務時,僅需執行如下命令:

?
1 2 3 4 5 # 啟動MySQL服務 net start mysql   # 關閉MySQL服務 net stop mysql

Linux版本

安裝:

?
1 yum install mysql-server  

服務端啟動

?
1 mysql.server start

客戶端連接

?
1 2 3 4 5 6 7 連接:     mysql -h host -u user -p       常見錯誤:         ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2), it means that the MySQL server daemon (Unix) or service (Windows) is not running. 退出:     QUIT 或者 Control+D

三、資料庫操作

1、顯示資料庫

?
1 SHOW DATABASES;

預設資料庫:
  mysql - 用戶許可權相關數據
  test - 用於用戶測試數據
  information_schema - MySQL本身架構相關數據

2、創建資料庫

?
1 2 3 4 5 # utf-8 CREATE DATABASE 資料庫名稱 DEFAULT CHARSET utf8 COLLATE utf8_general_ci;   # gbk CREATE DATABASE 資料庫名稱 DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;

3、使用資料庫

?
1 USE db_name;

顯示當前使用的資料庫中所有表:SHOW TABLES;

4、用戶管理

?
1 2 3 4 5 6 7 8 9 10 創建用戶     create user '用戶名'@'IP地址' identified by '密碼'; 刪除用戶     drop user '用戶名'@'IP地址'; 修改用戶     rename user '用戶名'@'IP地址'; to '新用戶名'@'IP地址';; 修改密碼     set password for '用戶名'@'IP地址' = Password('新密碼')    PS:用戶許可權相關數據保存在mysql資料庫的user表中,所以也可以直接對其進行操作(不建議)

5、授權管理

?
1 2 3 show grants for '用戶'@'IP地址'                  -- 查看許可權 grant  許可權 on 資料庫.表 to   '用戶'@'IP地址'      -- 授權 revoke 許可權 on 資料庫.表 from '用戶'@'IP地址'      -- 取消許可權
複製代碼
            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                   

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1.基本語法 2.自動加入文件頭 在etc/vimic 源碼: 3.修改為不提示自動創建(也可以提示自動創建) 源碼: 3.shell的高亮顯示 ...
  • *FastDFS圖片伺服器搭建準備:1.需要libfastcommon安裝包 選擇最新穩定版(libfastcommon-1.0.36.tar.gz)2.需要FastDFS安裝包 選擇最新穩定版(fastdfs-5.11.tar.gz)3.需要Nginx安裝包 選擇最新穩定版(nginx-1.12. ...
  • 本機環境: windows 10 專業版 。 linux環境: VMware-workstation-full-12.5.7.20721.exe CentOS-7-x86_64-DVD-1511.iso Xshell_5.0.1339p.exe Xftp-5.0.1233.exe 本章重點網路環境配 ...
  • [20181214]open file using O_DIRECT.txt--//因為一個測試需要,需要寫一個測試小例子,驗證使用O_DIRECT打開文件每次都是從磁碟讀取.--//沒想到浪費1個上午時間,C語言不是自己的擅長.#include <stdio.h>#include <stdlib. ...
  • 1.vim編輯器設置分為兩種設置,臨時設置和永久設置 2.臨時設置開啟和關閉高亮模式(目前高亮模式是開啟的) 在文本編輯器中命令行模式下輸入 3.永久設置開啟和關閉高亮模式,文件位置 etc/vimrc 設置高亮顯示 syntax on /sytax off ...
  • 使用過蘋果手機的用戶都知道,蘋果手機觸摸屏操作極為流暢,網頁瀏覽也非常輕鬆,各種網路上的應用可以說是非常完美。iPhone的娛樂功能相當的強大,能讓蘋果iPhone超越了其他手機很大的距離。但是手機怎麼投屏到電腦呢? 使用工具: 蘋果手機、電腦(網路線上) 蘋果投屏工具 方法/步驟: 1、屏幕鏡像是 ...
  • 項目背景:   現在是一名大三生,在早早的為實習做準備。一直嚮往著互聯網之都—杭州,實習也準備投往杭州。到了杭州肯定得租房 住,那麼許多租房的問題也接踵而至:房租貴、位置偏、房屋舊、房東一言不合就漲租等問題,且也經常聽學長抱怨:“早知道 公司附近租房這麼貴,當初談薪資的時候就報個更高的價格 ...
  • Zookeeper是一個開源的分散式的,為分散式應用提供協調服務的Apache項目。 1. Zookerper工作機制 2. Zookeeper工作特點 3. Zookeeper文件系統:znode不區分文件與文件夾 4. Zookeeper配置文件參數: tickTime =2000:通信心跳數, ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...