1. 程式人生 > >python的學習之旅---Mysql資料庫

python的學習之旅---Mysql資料庫

1 什麼是資料庫(DataBase,簡稱DB)

資料庫即存放資料的倉庫,只不過這個倉庫是在計算機儲存裝置上,而且資料是按一定的格式存放的

過去人們將資料存放在檔案櫃裡,現在資料量龐大,已經不再適用

資料庫是長期存放在計算機內、有組織、可共享的資料即可。

資料庫中的資料按一定的資料模型組織、描述和儲存,具有較小的冗餘度、較高的資料獨立性和易擴充套件性,並可為各種 使用者共享

2 什麼是資料庫管理系統(DataBase Management System 簡稱DBMS)

在瞭解了Data與DB的概念後,如何科學地組織和儲存資料,如何高效獲取和維護資料成了關鍵

這就用到了一個系統軟體---資料庫管理系統

如MySQL、Oracle、SQLite、Access、MS SQL Server

mysql主要用於大型門戶,例如搜狗、新浪等,它主要的優勢就是開放原始碼,因為開放原始碼這個資料庫是免費的,他現在是甲骨文公司的產品。
oracle主要用於銀行、鐵路、飛機場等。該資料庫功能強大,軟體費用高。也是甲骨文公司的產品。
sql server是微軟公司的產品,主要應用於大中型企業,如聯想、方正等。

3資料庫伺服器、資料管理系統、資料庫、表與記錄的關係。

表:student,scholl,class_list(即檔案)

資料庫:oldboy_stu(即資料夾)

資料庫管理系統:如mysql(是一個軟體)

資料庫伺服器:一臺計算機(對記憶體要求比較高)

認識Mysql

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

mysql是什麼

#mysql就是一個基於socket編寫的C/S架構的軟體
#客戶端軟體
  mysql自帶:如mysql命令,mysqldump命令等
  python模組:如pymysql

資料庫管理軟體分類

複製程式碼

1 #分兩大類:
2   關係型:如sqllite,db2,oracle,access,sql server,MySQL,注意:sql語句通用
3   非關係型:mongodb,redis,memcache
4 
5 #可以簡單的理解為:
6     關係型資料庫需要有表結構
7     非關係型資料庫是key-value儲存的,沒有表結構

複製程式碼

安裝

二進位制rpm包安裝

yum -y install mysql-server mysql

複製程式碼

1.解壓tar包
cd /software
tar -xzvf mysql-5.6.21-linux-glibc2.5-x86_64.tar.gz
mv mysql-5.6.21-linux-glibc2.5-x86_64 mysql-5.6.21

2.新增使用者與組
groupadd mysql
useradd -r -g mysql mysql
chown -R mysql:mysql mysql-5.6.21

3.安裝資料庫
su mysql
cd mysql-5.6.21/scripts
./mysql_install_db --user=mysql --basedir=/software/mysql-5.6.21 --datadir=/software/mysql-5.6.21/data

4.配置檔案
cd /software/mysql-5.6.21/support-files
cp my-default.cnf /etc/my.cnf
cp mysql.server /etc/init.d/mysql
vim /etc/init.d/mysql   #若mysql的安裝目錄是/usr/local/mysql,則可省略此步
修改檔案中的兩個變更值
basedir=/software/mysql-5.6.21
datadir=/software/mysql-5.6.21/data

5.配置環境變數
vim /etc/profile
export MYSQL_HOME="/software/mysql-5.6.21"
export PATH="$PATH:$MYSQL_HOME/bin"
source /etc/profile

6.新增自啟動服務
chkconfig --add mysql
chkconfig mysql on

7.啟動mysql
service mysql start

8.登入mysql及改密碼與配置遠端訪問
mysqladmin -u root password 'your_password'     #修改root使用者密碼
mysql -u root -p     #登入mysql,需要輸入密碼
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your_password' WITH GRANT OPTION;     #允許root使用者遠端訪問
mysql>FLUSH PRIVILEGES;     #重新整理許可權

原始碼安裝mysql

複製程式碼

複製程式碼

1. 解壓
tar zxvf  mariadb-5.5.31-linux-x86_64.tar.gz   
mv mariadb-5.5.31-linux-x86_64 /usr/local/mysql //必需這樣,很多指令碼或可執行程式都會直接訪問這個目錄

2. 許可權
groupadd mysql             //增加 mysql 屬組 
useradd -g mysql mysql     //增加 mysql 使用者 並歸於mysql 屬組 
chown mysql:mysql -Rf  /usr/local/mysql    // 設定 mysql 目錄的使用者及使用者組歸屬。 
chmod +x -Rf /usr/local/mysql    //賜予可執行許可權 

3. 拷貝配置檔案
cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf     //複製預設mysql配置 檔案到/etc目錄 

4. 初始化
/usr/local/mysql/scripts/mysql_install_db --user=mysql          //初始化資料庫 
cp  /usr/local/mysql/support-files/mysql.server    /etc/init.d/mysql    //複製mysql服務程式 到系統目錄 
chkconfig  mysql on     //新增mysql 至系統服務並設定為開機啟動 
service  mysql  start  //啟動mysql

5. 環境變數配置
vim /etc/profile   //編輯profile,將mysql的可執行路徑加入系統PATH
export PATH=/usr/local/mysql/bin:$PATH 
source /etc/profile  //使PATH生效。

6. 賬號密碼
mysqladmin -u root password 'yourpassword' //設定root賬號及密碼
mysql -u root -p  //使用root使用者登入mysql
use mysql  //切換至mysql資料庫。
select user,host,password from user; //檢視系統許可權
drop user ''@'localhost'; //刪除不安全的賬戶
drop user [email protected]'::1';
drop user [email protected];
select user,host,password from user; //再次檢視系統許可權,確保不安全的賬戶均被刪除。
flush privileges;  //重新整理許可權

7. 一些必要的初始配置
1)修改字符集為UTF8
vi /etc/my.cnf
在[client]下面新增 default-character-set = utf8
在[mysqld]下面新增 character_set_server = utf8
2)增加錯誤日誌
vi /etc/my.cnf
在[mysqld]下面新增:
log-error = /usr/local/mysql/log/error.log
general-log-file = /usr/local/mysql/log/mysql.log
3) 設定為不區分大小寫,linux下預設會區分大小寫。
vi /etc/my.cnf
在[mysqld]下面新增:
lower_case_table_name=1

修改完重啟:#service  mysql  restart

原始碼安裝mariadb

複製程式碼

Window版本

複製程式碼

#1、下載:MySQL Community Server 5.7.16
http://dev.mysql.com/downloads/mysql/

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

#3、新增環境變數
【右鍵計算機】--》【屬性】--》【高階系統設定】--》【高階】--》【環境變數】--》【在第二個內容框中找到 變數名為Path 的一行,雙擊】 --> 【將MySQL的bin目錄路徑追加到變值值中,用 ; 分割】
 
#4、初始化   初始化的時候一定要在bin目錄下
mysqld --initialize-insecure

#5、啟動MySQL服務
mysqld # 啟動MySQL服務

#6、啟動MySQL客戶端並連線MySQL服務
mysql -u root -p # 連線MySQL伺服器

安裝

複製程式碼

這裡是最需要注意的地方,在安裝mysql服務時,一定要切換到mysql安裝目錄的bin目錄下,不管你是否配置環境變數,否則在安裝完後啟動服務還是會報上面的錯誤。

http://blog.csdn.net/mhmyqn/article/details/17043921

以上這個帖子比較全的異常處理和安裝