當前位置:首頁 » 操作系統 » mysql源碼linux

mysql源碼linux

發布時間: 2025-07-22 10:19:55

A. linux下安裝mysql,求助大俠們

3. MySQL的安裝
MySQL有兩種安裝方式:源碼包安裝和二進制包安裝。這兩種方式各有特色:二位制包安裝不需編譯,針對不同的平台有經
過優化編譯的不同的二進制文件以及包格式,安裝簡單方便;源碼包則必須先配置編譯再安裝,可以根據你所用的主機環境進行優化,選擇最佳的配置值,安裝定製
更靈活。下面分別介紹這兩種安裝方式。
3.1 源碼包方式安裝
3.1.1 在linux系統中添加運行Mysql的用戶和組
/usr/sbin/groupadd mysql
/usr/sbin/useradd -d /var/lib/mysql -s /sbin/nologin -g mysql mysql
3.1.2 下載最新穩定發行版(GA)的MySQL軟體
訪問MySQL網站http://dev.mysql.com/downloads/下載最新穩定發行版的MySQL源碼包。本文使用的是5.0.51版本,在linux系統下用下面的命令下載:
wget http://mysql.mirror.kangaroot.net/Downloads/MySQL-5.0/mysql-5.0.51.tar.gz
3.1.3 解壓縮下載的源碼包
首先建立一個工作目錄( 筆者建議的目錄為/usr/local/src/mysql ) :
mkdir -p /usr/local/src/mysql
將下載的源碼包移至工作目錄:
mv mysql-5.0.51.tar.gz /usr/local/src/mysql
進入工作目錄並用tar命令解壓源碼包:
cd /usr/local/src/mysql
tar zxvf mysql-5.0.51.tar.gz
命令執行結束後,當前工作目錄下將生成一個新的子目錄mysql-5.0.51,此目錄下即為mysql的源碼文件。
3.1.4 配置Makefile文件
進入MySQL源碼目錄:
cd mysql-5.0.51
執行下面的命令可查看可配置選項:
./configure --help
本文使用的配置命令格式如下:

CC=gcc CFLAGS="-O3" CXX=gcc CXXFLAGS="-O3 -felide-constructors
-fno-exceptions -fno-rtti" ./configure
--prefix=/usr/local/mysql --enable-thread-safe-client --enable-assembler
--with-big-tables --with-client-ldflags=-all-static
--with-mysqld-ldflags=-all-static --with-charset=utf8
--with-collation=utf8_general_ci --with-extra-charsets=complex
配置選項說明:
CC:C編譯器的名稱(用於運行configure),本文示例為gcc
CFLAGS:C編譯器的標志(用於運行configure),本文示例為-O3,指定優化級別為3
CXX:C++編譯器的名稱(用於運行configure),本文示例為gcc
CXXFLAGS:C++編譯器的標志(用於運行configure)
--prefix:指定安裝目錄,本文示例為/usr/local/mysql
--localstatedir:指定默認資料庫文件保存目錄,默認為安裝目錄下的var目錄
--enable-thread-safe-client:編譯線程安全版的MySQL客戶端庫
--enable-assembler:使用一些字元函數的匯編版本
--with-client-ldflags:客戶端鏈接參數,本文示例為指定靜態編譯mysql客戶端
--with-mysqld-ldflags:伺服器端鏈接參數,本文示例為指定靜態編譯mysql伺服器
--with-big-tables:在32位平台上支持大於4G行的表


--with-charset:指定默認字元集。mysql默認使用latin1(cp1252)字元集,可以使用此選項更改。字元集可以是big5、
cp1251、cp1257、czech、danish、dec8、dos、euc_kr、gb2312、gbk、german1、hebrew、
hp8、hungarian、koi8_ru、koi8_ukr、latin1、latin2、sjis、swe7、tis620、ujis、usa7或
win1251ukr。
--with-collation:指定默認校對規則。mysql默認使用latin1_swedish_ci校對規則,可以使用此選項更改。
--with-extra-charsets:伺服器需要支持的字元集,有三種可能的值:空格間隔的一系列字元集名;complex ,包括不能動態裝載的所有字元集;all,將所有字元集包括進二進制。本文示例為complex。
注意:要想更改字元集和校對規則,要同時使用--with-charset和--with-collation選項。 校對規則必須是字元集的合法校對規則。(在mysql中使用SHOW COLLATION語句來確定每個字元集使用哪個校對規則)。
3.1.5 編譯源代碼
執行下面的命令編譯源代碼:
make
3.1.6 安裝
執行下面的命令安裝mysql到目標路徑:
make install
3.1.7 復制默認全局啟動參數配置文件到/etc目錄

碼方式安裝需要手動復制配置文件,配置模板位於源碼樹的support-files目錄,有my-small.cnf、my-medium.cnf、
my-large.cnf、my-huge.cnf四個,選擇跟你的環境相接近的一個復制到/etc目錄,並做適當修改。關於mysql配置文件的詳細信
息請參閱筆者的其它文章或是mysql官方文檔。
本文示例選擇my-medium.cnf,執行下面的命令將其復制到/etc目錄:
cp ./support-files/my-medium.cnf /etc/my.cnf
3.1.8 初始化授權表
執行下面的命令初始化授權表:
./scripts/mysql_install_db --user=mysql
3.1.9 更改mysql數據目錄屬主和許可權
默認資料庫文件保存目錄為安裝目錄下的var目錄,執行configure命令時可通過--localstatedir參數指定不同的目錄,本文示例為默認位置。
chown -R mysql.mysql /usr/local/mysql/var
chmod -R 700 /usr/local/mysql/var
3.1.10 設置開機自啟動服務控制腳本
執行下面的命令復制啟動腳本到資源目錄:
cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
執行下面的命令增加mysqld服務控制腳本執行許可權:
chmod +x /etc/rc.d/init.d/mysqld
執行下面的命令將mysqld服務加入到系統服務:
chkconfig --add mysqld
執行下面的命令檢查mysqld服務是否已經生效:
chkconfig --list mysqld
命令輸出類似下面的結果:
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
表明mysqld服務已經生效,在2、3、4、5運行級別隨系統啟動而自動啟動,以後可以使用service命令控制mysql的啟動和停止。
啟動mysqld服務:
service mysqld start
停止mysqld服務:
service mysqld stop
執行下面的命令關閉開機自啟動:
chkconfig mysqld off
執行下面的命令可以改變開機自啟動的運行級別為3、5:
chkconfig --level 35 mysqld on
3.1.11 將mysql的bin目錄加入PATH環境變數
編輯/etc/profile文件:
vi /etc/profile
在文件最後添加如下兩行:
PATH=$PATH:/usr/local/mysql/bin
export PATH
執行下面的命令使所做的更改生效:
. /etc/profile

3.2 二進制包方式安裝
3.2.1 從安裝媒體安裝
Mysql二進制包已經包含在CentOS 5的安裝媒體中,可以直接從安裝媒體中安裝下面三個rpm包:
mysql-5.0.22-2.1.0.1.i386.rpm
mysql-devel-5.0.22-2.1.0.1.i386.rpm
mysql-server-5.0.22-2.1.0.1.i386.rpm
不同的版本文件名有所不同,請注意區分。
執行下面的命令安裝:
rpm -iUvh mysql-5.0.22-2.1.0.1.i386.rpm
rpm -iUvh mysql-devel-5.0.22-2.1.0.1.i386.rpm
rpm -iUvh mysql-server-5.0.22-2.1.0.1.i386.rpm
3.2.2 通過yum安裝
如果你安裝的機器此時可以連接到互聯網,筆者建議使用yum命令來簡化安裝過程:
yum install mysql-server mysql-devel mysql
yum將自動從centos的鏡像站點查找你指明的軟體的最新二進制包,並檢查軟體包依賴關系,安裝軟體的同時自動安裝其依賴的軟體包。
3.2.3 從mysql網站下載最新穩定版本的二進制包安裝
通過CentOS安裝媒體或yum安裝的二進制包版本會落後於mysql開發者網站發布的版本,可以從mysql網站下載安裝最新穩定版本的mysql。
訪問MySQL網站http://dev.mysql.com/downloads/下
載最新穩定發行版的相應硬體平台的MySQL。本文使用的是Red Hat Enterprise Linux 5 RPM (x86)
5.0.45版本。需要下載Server、Client、Headers and Libraries、Share Libraries/Shared
compatibility libraries幾個rpm包,其它為可選包,按需要選擇。
在linux系統下用下面的命令下載:
wget http://mysql.mirrors.pair.com/Downloads/MySQL-5.0/MySQL-server-community-5.0.45-0.rhel5.i386.rpm
wget http://mysql.mirrors.pair.com/Downloads/MySQL-5.0/MySQL-client-community-5.0.45-0.rhel5.i386.rpm
wget http://mysql.mirrors.pair.com/Downloads/MySQL-5.0/MySQL-devel-community-5.0.45-0.rhel5.i386.rpm
wget http://mysql.mirrors.pair.com/Downloads/MySQL-5.0/MySQL-shared-community-5.0.45-0.rhel5.i386.rpm
wget http://mysql.mirrors.pair.com/Downloads/MySQL-5.0/MySQL-shared-compat-5.0.45-0.rhel5.i386.rpm
執行下面的命令安裝:
rpm -iUvh MySQL-server-community-5.0.45-0.rhel5.i386.rpm
rpm -iUvh MySQL-client-community-5.0.45-0.rhel5.i386.rpm
rpm -iUvh MySQL-devel-community-5.0.45-0.rhel5.i386.rpm
rpm -iUvh MySQL-shared-community-5.0.45-0.rhel5.i386.rpm
rpm -iUvh MySQL-shared-compat-5.0.45-0.rhel5.i386.rpm

4. MySQL的配置
4.1 目錄結構
4.1.1 源碼包方式安裝目錄結構
源碼包方式安裝時通常是在3.1.4節中configure命令的--prefix選項指定的目錄中建立如下的目錄結構,特殊指定的目錄除外:
./bin #mysql用戶可執行文件目錄
./include/mysql #mysql C頭文件目錄
./info #mysql 信息文件目錄
./lib/mysql #mysql庫文件目錄
./libexec #mysql後台daemon程序目錄
./man #mysql聯機幫助文檔目錄
./mysql-test #mysql測試程序目錄
./share/mysql #mysql公用文件目錄,包括字元集、配置文件模板、啟動腳本、初始化SQL文件等
./sql-bench #mysql壓力測試程序目錄
/etc/my.cnf #mysql配置文件
/etc/rc.d/init.d/mysqld #mysqld服務啟動腳本

4.1.2 RPM二進制包方式安裝目錄結構
二進制包方式安裝時使用系統軟體默認目錄結構 :
/usr/bin #mysql用戶可執行文件目錄
/usr/libexec #mysql後台daemon程序目錄
/usr/lib/mysql #mysql庫文件目錄
/usr/lib64/mysql #如果為64系統,mysql 64位庫文件目錄
/usr/share/doc #mysql文檔目錄
/usr/share/info #mysql信息文件目錄
/usr/share/man #mysql聯機幫助文檔目錄
/usr/share/mysql #mysql字元集目錄
/usr/include/mysql #mysql C頭文件目錄
/var/log #mysqld服務日誌文件目錄
/var/run/mysqld #mysqld服務運行狀態目錄
/var/lib/mysql #mysql數據文件目錄
/etc/my.cnf #mysql配置文件
/etc/rc.d/init.d/mysqld #mysqld服務啟動腳本

4.2 配置文件
Linux
系統下,mysql的配置參數文件為my.cnf,一般按下面的順序查找此文件:/etc目錄、mysql安裝目錄、mysql數據目錄。配置模板位於源
碼樹的support-files目錄,有my-small.cnf、my-medium.cnf、my-large.cnf、my-huge.cnf四
個,關於mysql配置文件的詳細信息請參閱筆者的其它文章或是mysql官方文檔。

4.3 啟動mysqld服務
執行下面的命令啟動mysql:
service mysqld start

4.3 設置mysql帳號
mysql安裝後默認生成兩個帳號:一個是root,未設置密碼,可以從本機登錄到mysql;另一個是匿名帳號,無帳號名、無密碼,可以從本機登錄,未提供用戶名的連接都將假定為此帳號。這樣的設置存在著安全隱患,按下面的步驟進行更改。
以root帳號連接到mysql伺服器:
mysql -u root
如果提示找不到mysql文件,請嘗試使用絕對路徑,如本文示例為:
/usr/local/mysql/bin/mysql -u root
命令成功執行後將進入到mysql命令提示符下:
mysql>
(以下命令均在mysql命令提示符下執行)
改變當前資料庫為mysql:
use mysql
設置從本地主機登錄的root帳號密碼:
set password for root@localhost=password('your password');
或:
update user set password=password('your password') where user='root' and host='localhost';
刪除匿名帳號:
delete from user where user='' ;
刪除密碼為空的帳號:
delete from user where password='';
刪除允許非localhost主機登錄的帳號:
delete from user where host<>'localhost' ;
執行下面的命令使更改生效:
flush privileges ;
執行下面的命令退出mysql命令行:
quit
或:
/q

5. 結束語
至此,Mysql基本安裝完畢。希望本文能對初學者有所幫助。

B. 在linux下配置與安裝mysql-8.0.20

MySQL下載

第一步,登錄MySQL官網下載對應版本的MySQL。

下載地址:downloads.mysql.com/arc...

下載文件為:generic版本mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz。

配置與安裝MySQL

1. 登錄系統,使用命令行工具下載MySQL。

命令:wget dev.mysql.com/get/Downl...

配置與檢測系統

1. 使用Linux文件管理工具如WinSCP 5.14.4。

2. 檢測系統版本為CentOS8或CentOS7 64位。

3. 下載對應版本的安裝源文件mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz。

卸載現有MySQL

1. 檢查系統是否已有MySQL版本。

命令:rpm -qa | grep mysql

如有類似"mysql-libs-5.1.52-1.el6_0.1.x86_64"的顯示,則進行卸載。

普通刪除模式:rpm -e mysql-libs-5.1.52-1.el6_0.1.x86_64

強力刪除模式:rpm -e --nodeps mysql-libs-5.1.52-1.el6_0.1.x86_64

卸載mariadb資料庫

命令:rpm -qa | grep mariadb

如有類似"mariadb-libs-5.5.56-2.el7.x86_64"的顯示,則進行卸載。

命令:rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64

上傳與解壓文件

使用WinSCP工具將mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz上傳至伺服器/usr/local目錄。

解壓文件並重命名:cd /usr/local; tar xvJf mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz; mv mysql-8.0.20-linux-glibc2.12-x86_64 mysql-8.0.20

添加系統用戶與組

檢查mysql組與用戶是否已存在。

命令:cat /etc/group | grep mysql

若存在,則無需添加;若不存在,則執行groupadd mysql和useradd -r -g mysql mysql命令。

安裝與初始化資料庫

創建data目錄:mkdir -p /usr/local/mysql-8.0.20/data

將/usr/local/mysql-8.0.20的所有者及所屬組改為mysql,並賦予許可權:chown -R mysql:mysql /usr/local/mysql-8.0.20; chmod -R 755 /usr/local/mysql-8.0.20; chmod -R 755 /usr/local/mysql-8.0.20/data

初始化資料庫:cd /usr/local/mysql-8.0.20/bin; ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql-8.0.20/ --datadir=/usr/local/mysql-8.0.20/data/

登錄並設置密碼:cd /usr/local/mysql-8.0.20/bin; ./mysql -u root -p; 輸入臨時密碼 kkpgnuazI7:h; 登錄成功顯示mysql>。

啟動與配置MySQL服務

將啟動腳本放到開機初始化目錄:cd /usr/local/mysql-8.0.20/support-files; cp mysql.server /etc/init.d/mysql; chmod +x /etc/init.d/mysql; chkconfig --add mysql

連接遠程MySQL伺服器:cd /usr/local/mysql-8.0.20/bin; ./mysql -u root -p -h y.y.y.y; 顯示mysql>則連接成功。

連接與操作MySQL

配置環境變數:在文件/etc/profile中添加代碼;使profile文件生效:source /etc/profile;登錄MySQL:mysql -uroot -pzy@123456;遠程連接MySQL:mysql -hx.x.x.x -uroot -pzy@123456;

自動登錄與執行語句:創建mysql_sign腳本;啟動腳本:service mysql_sign start;shell腳本連接遠程MySQL:創建mysql_sign2腳本;啟動腳本:service mysql_sign2 start。

C. Linux安裝MySQL(使用yum)

Linux使用yum安裝MySQL的詳細步驟

在Linux系統中使用yum安裝MySQL是一個相對簡單且高效的過程。以下是在Linux系統中,特別是基於yum包管理器的發行版(如CentOS、Alibaba Cloud Linux等)上安裝MySQL的詳細步驟。

一、安裝前准備

  1. 替換國內yum鏡像

    為了提高下載速度和穩定性,建議將yum鏡像源替換為國內鏡像。具體替換方法可參考相關教程,如「yum更換國內鏡像源」。

    如果你的伺服器環境是aliyun的ECS,且系統鏡像選了阿里自己的Alibaba Cloud Linux 2鏡像,那麼默認就使用了阿里自己的yum源,無需手動更改。

  2. 查看Linux內核版本

    安裝MySQL前,需要查看你的Linux內核版本,以便在MySQL官網選擇合適的yum源。

    執行命令cat /proc/version或hostnamectl查看內核版本。例如,內核版本可能是Linux 4.19.91-25.6.al7.x86_64,表示是64位的Linux 4.19版本。

二、安裝過程

  1. 從MySQL官網獲取yum源

    訪問MySQL官方下載頁(https://dev.mysql.com/downloads/),根據你的內核版本選擇合適的yum倉庫。

    對於Alibaba Cloud Linux 2,雖然其內核版本可能與CentOS有所不同(如al7與el7),但通常可以選擇兼容的yum源,如el7的yum源。

    下載對應的yum源rpm包,並上傳到你的Linux伺服器上。

  2. 使用yum安裝MySQL

    添加MySQL yum源

    切換到上傳rpm包的目錄,執行命令sudo rpm -Uvh mysql80-community-release-el7-5.noarch.rpm(文件名需根據實際情況替換)將MySQL的yum源添加到系統中。

    選擇要安裝的MySQL版本

    默認情況下,添加完yum源後會安裝最新的MySQL版本(如MySQL 8.0)。如果需要安裝其他版本(如MySQL 5.7),需修改配置。

    執行命令yum repolist all | grep mysql查看當前可用的MySQL yum源子倉庫。

    使用sudo yum-config-manager --disable mysql80-community禁用MySQL 8.0倉庫,使用sudo yum-config-manager --enable mysql57-community啟用MySQL 5.7倉庫。

    再次執行yum repolist all | grep mysql確認已正確切換版本。

    (可選)el8版本內核的額外操作

    如果你的Linux內核版本是el8,可能需要禁用默認的MySQL模塊,以避免沖突。執行命令sudo yum mole disable mysql。

    安裝MySQL

    執行命令sudo yum install mysql-community-server安裝MySQL伺服器。

  3. 啟動MySQL服務

    執行命令systemctl start mysqld啟動MySQL服務。

    使用命令systemctl status mysqld查看MySQL服務狀態。

  4. 後續配置

    改默認密碼

    MySQL服務首次啟動時,會生成一個默認的root用戶密碼,存儲在/var/log/mysqld.log文件中。使用sudo grep 'temporary password' /var/log/mysqld.log查找並獲取該密碼。

    登錄MySQL後,使用ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!'命令修改密碼(需滿足MySQL的密碼策略)。

    創建遠程訪問用戶

    為了允許遠程訪問,可以創建一個新的用戶並賦予其遠程訪問許可權。例如,使用create user 'root'@'%' identified with mysql_native_password by '你的密碼';創建用戶,使用grant all privileges on *.* to 'root'@'%' with grant option;賦予許可權,最後執行flush privileges;刷新許可權。

    開啟防火牆的3306埠

    根據你的Linux防火牆類型(firewalld或iptables),執行相應的命令開啟3306埠。例如,對於firewalld,執行firewall-cmd --zone=public --add-port=3306/tcp --permanent和firewall-cmd --reload。

    配置MySQL默認編碼為utf-8

    修改/etc/my.cnf文件,添加character_set_server=utf8和init_connect='SET NAMES utf8'配置,然後重啟MySQL服務使改動生效。

    (阿里雲用戶)安全組開啟3306埠

    如果你的伺服器託管在阿里雲上,還需在阿里雲控制台的安全組中開啟3306埠,以允許外部訪問。

  5. 連接測試

    使用MySQL客戶端(如MySQL Workbench、Navicat等)或命令行工具嘗試連接到MySQL伺服器,驗證安裝和配置是否成功。

通過以上步驟,你可以在Linux系統上成功安裝並配置MySQL資料庫。如果遇到任何問題,可以參考MySQL官方文檔或相關教程進行排查和解決。

D. 如何在linux系統中centos7.6上面安裝mysql資料庫

安裝mysql基本有三種辦法:

1,源碼編譯。 2,二進制包方式安裝 3, yum安裝。

可以採用二進制包方式安裝mysql,並進行優化配置。

1.安裝之前,先創建mysql用戶

[root@linuxprobe_nfs ~]# useradd mysql -s /sbin/nologin -M

[root@linuxprobe_nfs ~]# id mysql

uid=500(mysql) gid=500(mysql) groups=500(mysql)

2.軟體包的下載及解壓

[root@linuxprobe_nfs ~]# mkdir /home/chenfan/tools -p

[root@linuxprobe_nfs ~]# cd /home/chenfan/tools

在http://dev.mysql.com/downloads/mysql/官網上下載mysql-5.5.32-linux2.6-x86_64.tar.gz

[root@linuxprobe_nfs tools]# ls

mysql-5.5.32-linux2.6-x86_64.tar.gz

[root@linuxprobe_nfs tools]# tar zxvf mysql-5.5.32-linux2.6-x86_64.tar.gz

[root@linuxprobe_nfs tools]# ls

mysql-5.5.32-linux2.6-x86_64 mysql-5.5.32-linux2.6-x86_64.tar.gz

[root@linuxprobe_nfs local]# mv mysql-5.5.32-linux2.6-x86_64 /usr/local/mysql-5.5.32
###免編譯安裝 mysql二進制包安裝與配置實戰記錄

[root@linuxprobe_nfs local]# cd /usr/local

[root@linuxprobe_nfs local]# ln -s mysql-5.5.32 mysql

###此處的軟鏈接為了版本升級提供了便利

3.初始化資料庫

[root@linuxprobe_nfs local]# mysql/scripts/mysql_install_db --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --user=mysql

###此處如果初始化發生錯誤,刪除data目錄下的內容,rm -fr mysql/data/*,重新初始化。

4.生成MySQL配置文件

[root@linuxprobe_nfs local]# cd mysql

[root@linuxprobe_nfs mysql]# cp support-files/my-small.cnf /etc/my.cnf

5.授權管理文件

[root@linuxprobe_nfs ~]# chown -R mysql:mysql /usr/local/mysql/

[root@linuxprobe_nfs ~]# ls -ld /usr/local/mysql/

drwxr-xr-x. 13 mysql mysql 4096 Jun 24 17:21 /usr/local/mysql/

6.設置科學的啟動方式

[root@linuxprobe_nfs mysql]# cp support-files/mysql.server /etc/init.d/mysqld

[root@linuxprobe_nfs mysql]# chmod +x /etc/init.d/mysqld

[root@linuxprobe_nfs mysql]# /etc/init.d/mysqld start

Starting MySQL... SUCCESS!

[root@linuxprobe_nfs mysql]# chkconfig --add mysqld

[root@linuxprobe_nfs mysql]# chkconfig mysqld on

[root@linuxprobe_nfs mysql]# chkconfig --list mysqld

mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off

### 設置開機自啟動mysql

7.配置MySQL環境變數

[root@linuxprobe_nfs mysql]# echo 'PATH=/usr/local/mysql/bin:$PATH' >> /etc/profile

[root@linuxprobe_nfs mysql]# source /etc/profile

[root@linuxprobe_nfs mysql]# echo $PATH

/usr/local/mysql/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

###此處PATH路徑的設置為了後續mysql命令的使用

8.mysql登陸與密碼設置

[root@linuxprobe_nfs mysql]# mysql

E. linux 怎麼用cmake安裝mysql

方法/步驟

1
在安裝mysql資料庫伺服器前,確保你的linux系統是可以連接網路的,下面我們將通過源碼方式來安裝mysql首先通過putty登入進你的Linux系統,確保系統中已經安裝的gcc c++ 等編譯環境,因為mysql從5.5版本開始是使用cmake編譯的,如果三個環境都沒安裝,可以使用下面的命令進行安裝:yum -y install make gcc-c++ cmake bison-devel ncurses-devel

2
查找系統里是否已經安裝了mysql資料庫的相關組件,使用命令:rpm -qa | grep mysql 進行查找,如果查找到,可以使用下面命令進行強制卸載:rpm -e --nodeps 包名
如果你當時在安裝Linux系統時,使用的默認的安裝選項,這一步可以跳過;

3
然後我們來下載mysql的源碼安裝包,使用下面的命令來下載wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.24.tar.gz下載的時間可能有點漫長,請耐心等待;

4
下載完成後,使用命令: ll 可以查看當前目前下存在 mysql-5.6.24.tar.gz文件然後使用下面的命令解壓壓縮包:tar -zxvf mysql-5.6.14.tar.gz

然後使用命令: ll 可以查看當前目前下存在 mysql-5.6.24 目錄使用命令:cd mysql-5.6.24 切換到 mysql-5.6.24 這個目錄下;

上面的步驟完成後,下面我們來開始編譯mysql文件了,首先配置編譯的相關參數,執行如下命令:cmake \-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \-DMYSQL_DATADIR=/usr/local/mysql/data \-DSYSCONFDIR=/etc \-DWITH_MYISAM_STORAGE_ENGINE=1 \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_MEMORY_STORAGE_ENGINE=1 \-DWITH_READLINE=1 \-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \-DMYSQL_TCP_PORT=3306 \-DENABLED_LOCAL_INFILE=1 \-DWITH_PARTITION_STORAGE_ENGINE=1 \-DEXTRA_CHARSETS=all \-DDEFAULT_CHARSET=utf8 \-DDEFAULT_COLLATION=utf8_general_ci
接著使用 make && make install 來編譯並安裝mysql也可以分兩步來執行:先運行 make ,完成後再運行 make install整個過程大概需要30分鍾左右,請耐心等待,這段時間你可以做點別的事

安裝完成後,我們還要建立mysql的配置,首先設置mysql的訪問許可權,使用命令查看是否已經存在mysql用戶及用戶組,查看用戶列表命令:cat /etc/passwd 查看用戶組列表命令:cat /etc/group

如果不存在,我們就要創建:添加用戶組命令:groupadd mysql添加用戶:useradd -g mysql mysql然後來修改之前安裝的mysql所在目錄的訪問的用戶及用戶組輸入命令:chown -R mysql:mysql /usr/local/mysql

然後是初始化mysql配置,切換到mysql安裝目錄:cd /usr/local/mysql執行初始化配置腳本,創建mysql自帶的系統資料庫:./scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql

修改mysql配置文件,輸入命令:vi my.cnf然後按鍵盤的"insert"鍵,然後通過鍵盤的方向鍵來移動游標到要修改的行,添加如下內容:server-id=1 report-port=3306 port=3306 datadir=/usr/local/mysql/datasocket=/var/lib/mysql/mysql.sock
這一步很重要,需要更改該配置文件的所有者:chown -R mysql:mysql /usr/local/mysql/my.cnf否則下面啟動mysql服務會報錯;

添加mysql到開機啟動項,並啟動mysql服務( 註:在啟動MySQL服務時,會按照一定次序搜索my.cnf,先在/etc目錄下找,找不到則會到你安裝的mysql目錄找,在本例中就是 /usr/local/mysql/my.cnf。注意:在CentOS 6.4版操作系統的最小安裝完成後,在/etc目錄下會可能會存在一個my.cnf,需要將此文件更名為其他的名字,如:/etc/my.cnf.bak,否則,該文件會干擾源碼安裝的MySQL的正確配置,造成無法啟動。 重命名的命令是:mv my.cnf my.cnf.bak)cp support-files/mysql.server /etc/init.d/mysqld #復制腳本 chmod +x /etc/init.d/mysqld #增加可執行許可權 chkconfig --add mysqld #增加至sysV服務 chkconfig mysqld on #開機自啟動service mysqld start #啟動mysql服務netstat -aux|grep mysq #查看啟動的mysql進程

添加mysql的環境變數,以方便以後的操作輸入密碼:vi /etc/profile在文件的底部添加如下內容:PATH=/usr/local/mysql/bin:$PATHexport PATH保存並退出,輸入輸入命令,使配置立即生效:source /etc/profile

安裝好的mysql,默認root帳戶帳戶為空,下面我們來修改密碼輸入命令:mysql -uroot 回車後,然後輸入命令:SET PASSWORD = PASSWORD('123456');
設置完成後,輸入命令:quit; 退出mysql環境;

設置好 mysql密碼,需要輸入如下命令才能夠正確登錄進mysql:輸入命令:mysql -uroot -p 回車後,會提示你輸入密碼,輸入正確並執行後,會看到以mysql>開始的提示行,在這里你可以輸入任何有效的sql查詢語句:比如輸入:show databases; 來顯示所有的資料庫,注意後面的分號不能丟失,它標識一行命令的結束。至此,恭喜你,mysql安裝成功了。

F. Linux下mysql資料庫備份方法

通過mysql提供的功能
導出
命令:
mysqlmp -u 用戶名 -p 資料庫 資料庫.sql
示例:
                代碼如下    復制代碼    

   mysqlmp -u root -p db1 db1.sql(將資料庫db1備份到db1.sql中)
提示輸入密碼,完成即可。
導入
需要先創建一個空資料庫
mysql -u root -p(輸入密碼後進入mysql)
create database db1;(創建一個名為db1的資料庫)
exit(退出mysql)
命令:
mysql -u 用戶名 -p 資料庫 資料庫.sql
示例:
                代碼如下    復制代碼    

   mysql -u root -p db1 db1.sql(從備份文件db1.sql中導入數據到資料庫db1中)
提示輸入密碼,完成即可。
通過拷貝文件
如果資料庫特別大,可以使用拷貝的方式進行備份,不過不同的操作系統間可能會導致不兼容。
導出
進入mysql目錄,打包需要備份的資料庫目錄
示例:
                代碼如下    復制代碼    

   cd /var/lib/mysql(進入mysql目錄)
   tar -zcvf db1.tar.gz db1(打包db1目錄,如果提示沒有許可權,在前面加上sudo,提示輸入密碼後即可)
導入
首先創建一個空資料庫,將打包的文件拷貝到mysql目錄後解壓
示例:
                代碼如下    復制代碼            
mysql -u root -p(輸入密碼後進入mysql)
   create database db1;(創建一個名為db1的資料庫)
   exit(退出mysql)
   cp db1.tar.gz /var/lib/mysql(將打包文件拷貝到mysql目錄下)
   cd /var/lib/mysql(進入mysql目錄)
   tar -zxvf db1.tar.gz(解壓到當前目錄)
後現在linux中腳本
                代碼如下    復制代碼    

   #!/bin/bash
   #Mysql autobackup shell#write by tuspark.cn
   #-------------------資料庫相關的用戶名、密碼、需要備份的資料庫名、備份目錄等
   dbuser=root
   dbpasswd=XXXXX
   dbserver=localhost
   dbname=XXXXX
   dbopt=--opt
   backupdir=/dcbackup/
   #-------------------是否開啟ftp遠程備份,0為否,1為是。
   toftp=1
   ftpserver=XXXXX
   ftpuser=XXXXX
   ftppasswd=XXXXX
   #-------------------以下參數
   fileprefix=dcradiusmp
   filename=$backupdir`date +%F`.sql
   newfile=$fileprefix-`date +%F`.tar.gz
   keepdays=10
   #-------------------以下為備份時的日誌
   logfile=/var/log/mysqlbackup.log
   logtmp=/var/log/mybackup.tmp
   #===============================================
   if [ ! -d $backupdir ]
   then
   echo "$backupdir is not exist, then make ..." $logfile
   mkdir -p $backupdir
   fi
   echo "start===================================="$logfile
   echo "Beginning backup `date '+%F %T'`" $logfile
   echo "Delete $keepdays days ago files ..." $logfile
   find $backupdir -name $fileprefix* -mtime +$keepdays -fls $logtmp -exec rm {} ;
   echo "Deleted Backup file is :"$logfile
   cat $logtmp $logfile
   echo "Delete old file Success!" $logfile
   if [ -f $backupdir$newfile ]
   then
   echo "$newfile backup exist, backup stop ..." $logfile
   else
   if [ -z $dbpasswd ]
   then
   mysqlmp -u$dbuser -h$dbserver $dbopt $dbname $mpfilename
   else
   mysqlmp -u$dbuser -p$dbpasswd -h$dbserver $dbopt $dbname $mpfilename
   fi
   tar czvf $backupdir$newfile $mpfilename $logfile 21
   echo "$backupdir$newfile Backup Success!" $logfile
   rm -fr $mpfilename
   if [ $toftp = 1 ]; then
   if [ -z $ftpserver ];then
   echo "Ftp Server not set,Copy to Ftp Failed ..." $logfile
   exit 1
   elif [ -z $ftpuser ];then
   echo "Ftp user not set, Copy to Ftp Failed ..." $logfile
   exit 2
   elif [ -z $ftppasswd ]; then
   echo "Ftp password not set, Copy to Ftp Failed ..." $logfile
   exit 3
   else
   echo "Start to Ftp server ...." $logfile
   ftp -n$logfile
   fi

G. 怎樣在linux系統上安裝mysql資料庫

mysql安裝前准備

在安裝mysql之前需要進行一些准備工作。首先要明確Linux中是否已經安裝mysql服務,在不明確的情況下,可以執行以下命令進行確認。

[root@localhost~]#rpm-qmysql

執行命令後的結果如下所示,表明mysql服務沒有安裝。

[root@localhost~]#rpm-qmysql
packagemysqlisnotinstalled

如果檢測到mysql服務沒有安裝,則需要准備安裝mysql服務所需要的RPM包,如下所示:下載地址:http://dev.mysql.com/downloads/mysql/。

MySQL-server-community-5.1.26-0.rhel4.i386.rpm

MySQL-client-community-5.1.26-0.rhel4.i386.rpm

MySQL-shared-community-5.1.26-0.rhel4.i386.rpm

MySQL-devel-community-5.1.26-0.rhel4.i386.rpm

MySQL-test-community-5.1.26-0.rhel4.i386.rpm

MySQL-community-debuginfo-5.1.26-0.rhel4.i386.rpm

mysql安裝的詳細過程

安裝mysql的方法有多種,下面就以RPM包安裝和源碼安裝兩種方式為例進行講解。

1.RPM包安裝方式

運行如下命令:

[root@test1local]#rpm-ivhMySQL-server-community-5.1.26-0.rhel4.i386.rpm
Preparing...[100%]
1:MySQL-server[100%]

如上安裝其他的5個rpm文件,應該沒有什麼問題。

2.源碼安裝方式

要使用源碼的方式對mysql資料庫進行安裝,則需要先從相關網站下載獲得相應的mysql安裝包文件(mysql-5.0.15.tar.gz),然後進行相關的安裝工作,安裝的具體步驟如下。

第1步,為「mysqld」服務增添一個登錄組和用戶名,執行如下命令。

[root@localhost~]#groupaddmysql
[root@localhost~]#useradd-gmysqlmysql

第2步,解壓mysql安裝包,執行如下命令。

[root@localhost~]#gunzip<mysql-5.0.15.tar.gz|tar-xvf-
[root@localhost~]#cdmysql-5.0.15

第3步,進行相關的配置和編譯。

給configure分配可執行文件,執行如下命令。

[root@localhost~]#chmod+xconfigure

改變字元集為GBK[默認字元集為 ISO-8859-1(Latin1)],執行如下命令。

[root@localhost~]#./configure--prefix=/usr/local/mysql--with-charset=gbk
[root@localhost~]#make

第4步,執行如下命令進行安裝

[root@localhost~]#makeinstall

另外,如果想安裝選項文件,使用當前存在的「support-files」文件夾作為模板,執行如下指令。

[root@localhost~]#cpsupport-files/my-medium.cnf/etc/my.cnf

同時,如果需要讓mysql每次開機時自動啟動,需要執行如下指令。

[root@localhost~]#cp-rsupport-files/mysql.server/etc/init.d/mysql
[root@localhost~]#cd/etc/rc.d/init.d
[root@localhost~]#chmod+xmysql
[root@localhost~]#sbin/chkconfig--delmysql
[root@localhost~]#sbin/chkconfig--addmysql

第5步,執行以下命令進行安裝目錄。

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

第6步,將程序的所有許可權授給「root」,並且把數據目錄的所有授權給可以進行「mysqld」的用戶,假設mysql的安裝目錄為「/usr/local/mysql」,執行以下命令。

首先把文件擁有權授給「root」,執行如下命令。

[root@localhost~]#chown-Rroot

然後把數據目錄擁護權授給「mysql」用戶,執行如下命令。

[root@localhost~]#chown-Rmysqlvar

最後把組的許可權授給「mysql」組,執行如下命令。

[root@localhost~]#chgrp-Rmysql

第7步,所有的配置完成後,執行以下命令測試並運行mysql

[root@localhost~]#/usr/local/mysql/bin/mysqld_safe--user=mysql&
[root@localhost~]#servicemysqlstart

第8步,測試一切正常後,為了安全起見,最好更改管理員的密碼。可以運行mysqladmin,執行如下命令。

[root@localhost~]#cdbin
[root@localhost~]#./mysqladmin-urootpassword******

第9步,允許其他用戶訪問本機,執行以下命令。

[root@localhost~]#./mysqladmin-uroot-pmysql

第10步,修改mysql資料庫埠號,執行如下命令。

[root@localhost~]#vi/etc/my.cnf

第11步,重啟應用,執行如下命令。

[root@localhost~]#servicemysqlrestart

以上mysql安裝方式都稍顯復雜,建議在「軟體包管理者」窗口中進行安裝。

熱點內容
怎麼查移動的服務密碼是多少 發布:2025-07-22 16:21:08 瀏覽:53
昂克賽拉自動運動型是什麼配置 發布:2025-07-22 16:19:04 瀏覽:504
編程貓進度條 發布:2025-07-22 15:33:21 瀏覽:819
解壓商鋪 發布:2025-07-22 15:31:26 瀏覽:752
編譯調試編輯 發布:2025-07-22 15:24:08 瀏覽:512
導入jdk源碼 發布:2025-07-22 15:23:00 瀏覽:758
python數組矩陣 發布:2025-07-22 15:13:09 瀏覽:920
停止運行python腳本 發布:2025-07-22 15:06:48 瀏覽:906
怎樣下編程 發布:2025-07-22 15:05:24 瀏覽:563
u8的賬戶密碼是多少 發布:2025-07-22 14:58:52 瀏覽:56