MySQL 安裝和連線

2022-08-16 15:30:17 字數 2751 閱讀 3513

資料庫指的是以一定方式儲存在一起、能為多個使用者共享、具有盡可能小的冗餘度、與應用程式彼此獨立的資料集合。

三種型別的資料庫:

• 關係型資料庫:mysql、microsoft access、sql server、oracle、...

• 非關係型資料庫:mongodb、bigtable(google)、membase...

• 鍵值資料庫:redis、riak、apache cassandra(facebook)、leveldb(google) ...

【環境】

ubuntu 19.10

mysql  8.0

shell端

【安裝】

$sudo apt-get install mysql-server

【執行】

$service mysqld start

$mysql -u root  # 預設的 mysql 安裝之後根使用者是沒有密碼

mysql> grant all privileges on *.* to root@localhost identified by "123456";  # 設定密碼

【python-mysqldb】

python-mysqldb 是乙個介面程式,python 通過它對 mysql 資料實現各種操作。

在程式設計中,會遇到很多類似的介面程式,通過介面程式對另外乙個物件進行操作。

介面程式就好比鑰匙,把鎖開啟就可以操作門裡面的東西了。

$sudo apt-get install python-mysqldb  # shell端安裝python-mysqldb

import mysqldb  # python 互動模式下檢查是否安裝成功

【連線資料庫】

$mysql -u root -p

mysql> create database mill character set utf8;  # 建立資料庫 ok

query ok, 1 row affected (0.00 sec)  # 資料庫建立成功後的提示

注意上面的指令,如果僅僅輸入:create database qiwsirtest,也可以,但是,我在後面增加了 character se t utf8,意思是所建立的資料庫 qiwsirtest,編碼是 utf-8 的,這樣存入漢字就不是亂碼了。

通過下方**,用 python 通過已經安裝的 mysqldb 來連線這個名字叫做 mill 的庫

import mysqldb

con = mysqldb.connect(host="localhost",user="root",passwd="123456",db="mill",port=3306,charset="utf8")

逐個解釋上述命令的含義:

• host:等號的後面應該填寫 mysql 資料庫的位址,因為就資料庫就在本機上(也稱作本地),所以使用 local host,注意引號。

如果在其它的伺服器上,這裡應該填寫 ip 位址。一般中小型的**,資料庫和程式都是在 同一臺伺服器(計算機)上,就使用     localhost 了。

• user:登入資料庫的使用者名稱,這裡一般填寫"root",還是要注意引號。如果讀者命名了別的使用者名稱,資料庫管理者提供了專有使用者   名,

就更改為相應使用者。但是,不同使用者的許可權可能不同,所以,在程式中,如果 要運算元據庫,還要注意所擁有的許可權。在這裡用 root,

就放心了,什麼許可權都有啦。不過,這樣做,在大 型系統中是應該避免的。

• passwd:上述 user 賬戶對應的登入 mysql 的密碼。我在上面的例子中用的密碼是"123123"。不要忘記引 號。

• db:就是剛剛通 create 命令建立的資料庫,我建立的資料庫名字是"qiwsirtest",還是要注意引號。

看官如果 建立的資料庫名字不是這個,就寫自己所建資料庫名字。

• port:一般情況,mysql 的預設埠是 3306,當 mysql 被安裝到伺服器之後,為了能夠允許網路訪問,服務 器(計算機)要提供乙個訪問埠給它

方法。• charset:這個設定,在很多教程中都不寫,結果在真正進行資料儲存的時候,發現有亂碼。

這裡我將 qiwsirt est 這個資料庫的編碼設定為 utf-8 格式,這樣就允許存入漢字而無亂碼了。

注意,在 mysql 設定中,ut f-8 寫成 utf8,沒有中間的橫線。但是在 python 檔案開頭和其它地方設定編碼格式的時候,要寫成 ut f-8。切記!

注:connect 中的 host、user、passwd 等可以不寫,只有在寫的時候按照 host、user、passwd、db (可以 不寫)、port 順序寫就可以,

埠號 port=3306 還是不要省略的為好,如果沒有 db 在 port 前面,直接寫 3306 會報錯.

【常見錯誤】

1. mysql出現error1698(28000):access denied for user root@localhost錯誤解決方法

2. error 1524 (hy000): plugin 'auth_socket' is not loaded

解決方法: sudo /etc/init.d/mysql stop

sudo /etc/init.d/mysql start

3. ubuntu下安裝mysql出現 e: 無法定位軟體包問題

4. ubuntu 「軟體包 libpython3.5-dev 需要重新安裝,但是我無法找到相應的安裝檔案」的問題

5. error 2002 (hy000): can't connect to local mysql server through socket

mysql安裝 連線

開啟後進入mysql的bin目錄,執行 mysqld initialize console 生成密碼 2022 03 04t08 45 54.013764z 6 note my 010454 server a temporary password is generated for root loca...

mysql安裝連線錯誤 MySQL連線出錯及解決

1.安裝完系統自帶的mysql後連線資料庫 mysql u root error2002 can t connect to local mysql server through socket var lib mysql mysql.sock 2 連線時出現如上錯誤提示導致連線資料庫失敗!2.此時檢視...

centos7 mysql安裝和連線

mysql 安裝 有多種方式,常用兩種 1.使用 yum 倉庫 安裝 2.使用rpm包安裝 mysql help h 和 p可以省略,預設是本機localhost,3306埠 注意 埠 p 大寫,密碼 p 小寫 引數名後面的空格可以省略 mysql h host p port u user p en...