首頁 > linux教程 > LAMP環境搭建和LNMP環境搭建 閱讀:0更新時間:2020-03-28 01:06:16

Linux MySQL安裝過程(詳解版)

本節,我們學習安裝 mysql 數據庫,其安裝步驟稍微復雜,我們逐步來進行解析。

1) 添加 mysql 用戶和 mysql 用戶組

命令如下:

[root@localhost ~]# groupadd mysql
#添加mysql用戶組
[root@localhost ~]# useradd -g mysql mysql
#添加mysql用戶,同時指定mysql用戶的初始組是mysql組

這里添加的 mysql 用戶和用戶組是稍后用來給 MySQL 安裝目錄分配權限用的,所以并不需要設定密碼,因為這個用戶是不能直接登錄 linux 系統的。

2) 進入 MySQL 解壓縮目錄

[root@localhost ~]# cd /usr/local/src/mysql-5.5.23

3) 編譯前配置

[root@localhost mysql-5.5.23]# cmake \ #命令
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #指定安裝位置
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \ #指定socket(套接字)文件位置
-DEXTRA_CHARSETS=all \ #支持所有的擴展字符集
-DDEFAULT_CHARSET=utf8 \ #指定默認字符集
-DDEFAULT_COLLATION=utf8_general_ci \ #指定默認字符校對
-DWITH_MYISAM_STORAGE_ENGINE=1 \ #安裝myisam存儲引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 \ #安裝innodb存儲引擎
-DWITH_MEMORY_STORAGE_ENGINE=1 \ #安裝memory存儲引擎
-DWITH_READLINE=1 \ #支持readline庫
-DENABLED_LOCAL_INFILE=1 \ #啟用加載本地數據
-DMYSQL_USER=mysql \ #指定MySQL運行用戶
-DMYSQL_TCP_PORT=3306 #指定MySQL端口

4) 編譯

[root@localhost mysql-5.5.23]# make

使用 cmake 進行編譯。如果編譯過程中出現了報錯,則不再使用“make clean”命令清除緩存及臨時文件,而是直接刪除“rm-rf CMakeCache.txt”文件。

5) 編譯安裝

[root@localhost mysql-5.5.23]# make install

6) 生成MySQL的配置文件,并修改配置文件

這個配置文件不用手工建立,在 MySQL 安裝目錄中給我們準備了模板文件,只需把模板文件復制到指定位置并改名即可。命令如下:

[root@localhost mysql-5.5.23]#cp/usr/local/mysql/share/mysql/my-medium.cnf/etc/my.cnf

7) 修改 MySQL 安裝目錄的權限

[root@localhost mysql-5.5.23]# cd /usr/local/mysql/
#進入MySQL安裝目錄
[root@localhost mysql]# chown -R mysql.
#把當前目錄下所有文件的所有者改為root用戶
[root@localhost mysql]# chgrp -R mysql.
#把當前目錄下所有文件的所屬組改為mysql組

8) 初始化數據庫

源碼包安裝的 MySQL 中所有的數據庫默認都保存在 /usr/local/mysql/data/ 目錄中,MySQL 的初始數據庫 mysql 庫和 test 庫也會保存在這個目錄中。

但是,如果我們仔細查看 /usr/local/mysql/data/ 目錄,就會發現這個目錄中只有兩個空目錄,并沒有任何數據。也就是說,MySQL 中的所有數據庫是不存在的,那么這個 MySQL 是不能使用的,因為 MySQL 的所有用戶是要保存在 user 表中的,而 user 表保存在 mysql 庫中,而 mysql 庫是保存在 /usr/local/mysql/data/ 目錄中的。

那么,我們現在需要在 data 目錄中建立 MySQL 的初始數據庫。命令如下:

[root@localhost mysql]# /usr/local/mysql/bin/mysql_install_db --user=mysql
#初始化數據庫

這條命令的 --user 選項表示使用 mysql 用戶來初始化數據庫,這個用戶要和我們在步驟一中建立的用戶一致。命令執行完成之后,/usr/local/mysal/data/ 目錄中應該會出現很多相應的數據,證明數據庫初始化成功。

9) 繼續修改MySQL安裝目錄的權限

[root@localhost mysql]# chown -R root.
#把當前目錄下所有文件的所有者改為root用戶
#注意:修改的目錄依然是/usr/local/mysql/目錄下的文件
[root@localhost mysql]# chown -R mysql data
#把data目錄的所有者改為mysql用戶

10) 啟動 MySQL 服務器,并保證 mysql 服務開機自啟動

MySQL 服務器的安裝已經完成,我們可以嘗試啟動 MySQL 服務器,命令如下:

[root@localhost mysql]# /usr/local/mysql/bin/mysqld_safe ——user=mysql &
#使用mysql用戶啟動MySQL服務器,并在后臺持續運行
[root@localhost mysql]# netstat -tlun | grep 3306
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN
#3306端口已經開啟了

當然,我們還要保證 mysql 服務開機自啟動,命令如下:

[root@localhost mysql]# vi /etc/rc.local
#修改自啟動配置文件,加入如下的mysql服務標準啟動命令
/usr/local/mysql/bin/mysqld_safe ——user=mysql &

11) 設定 MySQL 中 root 用戶的密碼,并登錄

MySQL 的管理員也是 root,不過這只是數據庫的管理員,不要和 Linux 的 root 用戶混淆了。我們需要給 MySQL 的本地用戶設定一個密碼。設定密碼的方式有很多種,我們使用 Linux 的命令 mysqladmin 設定 MySQL 的 root 用戶的密碼。命令如下:

[root@localhost mysql]# /usr/local/mysql/bin/mysqladmin -u root password 123
#給MySQL的root用戶設定密碼為123
[root@localhost mysql]# /usr/local/mysql/bin/mysql -u root -p
#使用root用戶登錄mysql
Enter password: #輸入正確的密碼
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version:5.1.59-community-log Source distribution
Copyright (c) 2000, 2011, Oracle and/or its affiliates.All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates.Other names may be trademarks of their respective owners.
Type 'help;' or '\h' for help.Type '\c' to clear the current input statement.
mysql>
#看到了MySQL的交互界面
mysql> \s #查詢服務器狀態信息
…省略部分輸出…
Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8
#編碼格式已經修改為UTF-8
…省略部分輸出…
mysql> exit
#退出MySQL

beylze編程學院,一個分享編程知識和seo優化知識的網站。跟著beylze一起學習,每天都有進步。

通俗易懂,深入淺出,一篇文章只講一個知識點。

文章不深奧,不需要鉆研,在公交、在地鐵、在廁所都可以閱讀,隨時隨地漲姿勢。

文章不涉及代碼,不燒腦細胞,人人都可以學習。

當你決定關注beylze(公眾號:beylze),你已然超越了90%的其他從業者!

相關文章

優秀教程

国产亚洲欧美日韩