欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

MySQL5.7版本編譯安裝的詳細(xì)教程

不知道大家之前對類似MySQL 5.7版本編譯安裝的詳細(xì)教程的文章有無了解,今天我在這里給大家再簡單的講講。感興趣的話就一起來看看正文部分吧,相信看完MySQL 5.7版本編譯安裝的詳細(xì)教程你一定會有所收獲的。

成都網(wǎng)站建設(shè)、網(wǎng)站制作服務(wù)團(tuán)隊是一支充滿著熱情的團(tuán)隊,執(zhí)著、敏銳、追求更好,是創(chuàng)新互聯(lián)的標(biāo)準(zhǔn)與要求,同時竭誠為客戶提供服務(wù)是我們的理念。成都創(chuàng)新互聯(lián)把每個網(wǎng)站當(dāng)做一個產(chǎn)品來開發(fā),精雕細(xì)琢,追求一名工匠心中的細(xì)致,我們更用心!

1、            Mysql概述:

1.1、    Mysql概述

 MySQL 是一個關(guān)系型數(shù)據(jù)庫管理系統(tǒng),由瑞典 MySQL AB 公司開發(fā),目前屬于 Oracle 公司。

 MySQL 是最流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),在 WEB 應(yīng)用方面 MySQL 是最好的 RDBMS(Relational Database Management System:關(guān)系數(shù)據(jù)庫管理系統(tǒng))應(yīng)用軟件之一。

 MySQL 是一種關(guān)聯(lián)數(shù)據(jù)庫管理系統(tǒng),關(guān)聯(lián)數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個大倉庫內(nèi),這樣就增加了速度并提高了靈活性。

 MySQL 所使用的 SQL 語言是用于訪問數(shù)據(jù)庫的最常用標(biāo)準(zhǔn)化語言。MySQL 軟件采用了雙授權(quán)政策,它分為社區(qū)版和商業(yè)版,由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,一般中小型網(wǎng)站的開發(fā)都選擇 MySQL作為網(wǎng)站數(shù)據(jù)庫。由于其社區(qū)版的性能卓越,搭配 PHP 和 Apache 可組成良好的開發(fā)環(huán)境。

 雙授權(quán)政策:開放源代碼版本和商業(yè)版本。 例如:很多公司出售應(yīng)用軟件,例如 Microsoft、Apple 和 Oracle;如 Red Hat 和 IBM,則通過為其開放源代碼軟件提供銷售支援、托管或咨詢等服務(wù)來進(jìn)行賺錢。企業(yè)可以通過開放源代碼發(fā)布他們的軟件,也可以同時銷售該軟件的商業(yè)版本。

1.2、    SQL概述

 結(jié)構(gòu)化查詢語言(Structured Query Language)簡稱SQL,是一種特殊目的的編程語言,是一種數(shù)據(jù)庫查詢和程序設(shè)計語言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫系統(tǒng);同時也是數(shù)據(jù)庫腳本文件的擴(kuò)展名。

 從上可以看出我們數(shù)據(jù)庫相關(guān)工作職位大概兩種:DBD和DBA

 dba是數(shù)據(jù)庫管理員database administrator

 dbd是數(shù)據(jù)庫開發(fā)人員database developer

 SQL 是1986年10 月由美國國家標(biāo)準(zhǔn)局(ANSI)通過的數(shù)據(jù)庫語言美國標(biāo)準(zhǔn),接著,國際標(biāo)準(zhǔn)化組織(ISO)頒布了SQL正式國際標(biāo)準(zhǔn)。1989年4月,ISO提出了具有完整性特征的SQL89標(biāo)準(zhǔn),1992年11月又公布了SQL92標(biāo)準(zhǔn),在此標(biāo)準(zhǔn)中,把數(shù)據(jù)庫分為三個級別:基本集、標(biāo)準(zhǔn)集和完全集。

1.3、    SQL語句結(jié)構(gòu)

 結(jié)構(gòu)化查詢語言包含6個部分

1.3.1、 數(shù)據(jù)查詢語言(DQL)

 其語句,也稱為“數(shù)據(jù)檢索語句”,就是從表中查詢數(shù)據(jù)。

1.3.2、 數(shù)據(jù)操作語言(DML):

 在表中添加,修改和刪除數(shù)據(jù)記錄。也稱為動作查詢語言。

1.3.3、 事務(wù)處理語言(TPL):

 它由多條sql語句組成的整體,它的語句能確保被DML語句修改的表中的所有記錄及時得到更新。

1.3.4、 數(shù)據(jù)控制語言(DCL):

 設(shè)置數(shù)據(jù)庫的訪問權(quán)限。

1.3.5、 數(shù)據(jù)定義語言(DDL):

 在數(shù)據(jù)庫中創(chuàng)建表或刪除表(CREAT TABLE 或 DROP TABLE);為表加入索引等。

1.3.6、 指針控制語言(CCL):

 它的語句,像DECLARE CURSOR,F(xiàn)ETCH INTO和UPDATE WHERE CURRENT用于對一個或多個表單獨行的操作。

2、            源碼安裝mysql

2.1、    準(zhǔn)備實驗環(huán)境

2.1.1、 準(zhǔn)備源碼包

 方法一:

 上傳mysql安裝包和boost安裝包到我們的云服務(wù)器

 [root@cong11 ~]# ls

 anaconda-ks.cfg  boost_1_59_0.tar.bz2    mysql-5.7.26.tar.gz

 方法二:

 mysql下載地址:

 https://dev.mysql.com/downloads/mysql/5.7.html#downloads

 注意:官網(wǎng)提供下載的源碼包為mysql-community-5.7.26-1.el7.src.rpm以.src.rpm結(jié)尾的rpm包,需要rpm -ivh安裝這個包,在當(dāng)先目錄下生成rpmbuild的目錄文件,然后在rpmbuild/SOURCES/目錄下才是我們.tar.gz結(jié)尾的源碼包。

2.1.2、 配置本地yum源

 [root@cong11 ~]# mount /dev/sr0 /mnt

 [root@cong11 ~]# vim /etc/yum.repos.d/centos7.repo

 [centos7]

 name=CentOS7

 baseurl=file:///mnt

 enable=1

 gpgcheck=0

  

配置完成后清除/生成 yum緩存

 [root@cong11 ~]# yum clean all

 [root@cong11 ~]# yum makecache

 [root@cong11 ~]# yum –y groupinstall base //該軟件包擁有大多命令工具。

  

卸載boost

 MySQL從5.7版本之后,必須有boost支持,建議把系統(tǒng)自帶的boost庫卸載,使用高版本。

 [root@cong11 ~]# yum -y remove boost-*

 解壓我們上傳的boost_1_59_0.tar.bz2到root目錄下,待會安裝直接指定boost目錄。

 安裝bzip2解壓工具,解壓縮boost_1_59_0.tar.bz2

 [root@cong11 ~]# yum install -y bzip2

 [root@cong11 ~]# tar -jxvf boost_1_59_0.tar.bz2

2.1.3、 卸載系統(tǒng)自帶的mysql

 #rpm –qa | grep –E '(mysql|mariadb)'

 #rpm –e mariadb --nodeps

  

 [root@cong11 ~]# yum -y remove mysql*

 [root@cong11 ~]# yum -y remove mariadb*

2.2、    安裝mysql

2.2.4、 安裝MYSQL依賴包

 Mysql需要使用cmake來進(jìn)行編譯,所以需要安裝cmake,并且5.7版本cmake版本不低于2.8

 [root@cong11 ~]# yum install -y cmake make gcc gcc-c++ bison ncurses ncurses-devel

 MySQL 5.7版本編譯安裝的詳細(xì)教程

2.2.5、 添加mysql用戶和用戶組

 [root@cong11 ~]# groupadd mysql

 [root@cong11 ~]# useradd -M -s /sbin/nologin -r -g mysql mysql

2.2.6、 創(chuàng)建mysql數(shù)據(jù)庫存放位置并修改目錄權(quán)限

 [root@cong11 ~]# mkdir -p /usr/local/mysql/{data,log}

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

 注意:生產(chǎn)環(huán)境中mysql的data數(shù)據(jù)目錄會單獨放在一塊硬盤中(能夠并行寫入數(shù)據(jù)和日志提高效率)

2.2.7、 解壓源碼包

 [root@cong11 ~]# tar -zxvf mysql-5.7.26.tar.gz

2.2.8、 預(yù)編譯(配置./configure)

 預(yù)編譯需要我們指定安裝服務(wù)的參數(shù)或者模塊,還會對編譯環(huán)境進(jìn)行測試,只有通過測試,才能進(jìn)行編譯,預(yù)編譯失敗一般都是缺少編譯環(huán)境GCC或者其他的依賴包,需要我們手工安裝完依賴包后,再次進(jìn)行預(yù)編譯。

 [root@cong11 ~]#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=/usr/local/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 \

 -DDOWNLOAD_BOOST=1 \

 -DWITH_BOOST=/root/boost_1_59_0     #指定我們剛才解壓的boost目錄

 官網(wǎng)詳細(xì)地址:

 https://dev.mysql.com/doc/refman/5.7/en/source-configuration-options.html

 參數(shù)注釋:

 DCMAKE_INSTALL_PREFIX:指定MySQL程序的安裝目錄,默認(rèn)/usr/local/mysql

 DEFAULT_CHARSET:指定云服務(wù)器默認(rèn)字符集,默認(rèn)latin1

 DEFAULT_COLLATION:指定云服務(wù)器默認(rèn)的校對規(guī)則,默認(rèn)latin1_general_ci

 ENABLED_LOCAL_INFILE:指定是否允許本地執(zhí)行LOAD DATA INFILE,默認(rèn)OFF

 WITH_COMMENT:指定編譯備注信息

 WITH_xxx_STORAGE_ENGINE:指定靜態(tài)編譯到mysql的存儲引擎,MyISAM,       MERGE,MEMBER以及CSV四種引擎默認(rèn)即被編譯至云服務(wù)器,不需要特別指定。

 WITHOUT_xxx_STORAGE_ENGINE:指定不編譯的存儲引擎

 SYSCONFDIR:初始化參數(shù)文件目錄

 MYSQL_DATADIR:數(shù)據(jù)文件目錄

 MYSQL_TCP_PORT:服務(wù)端口號,默認(rèn)3306

 MYSQL_UNIX_ADDR:socket文件路徑,默認(rèn)/tmp/mysql.sock

 檢測命令執(zhí)行結(jié)果

 [root@cong11 ~]# echo $?    #0說明上條命令執(zhí)行成功,其他執(zhí)行失敗

 0                                                                

2.2.9、 編譯

 [root@cong11 ~]# make -j  $( grep processor /proc/cpuinfo | wc -l)

 

 make -j 4   #注:-j 用來指定CPU核心數(shù),可加快編譯速度。

 檢測命令執(zhí)行結(jié)果

 [root@cong11 ~]# echo $?

 0

 查看云服務(wù)器CPU核心數(shù)

 [root@cong11 ~]# grep processor /proc/cpuinfo | wc -l

 4

2.2.10、 安裝

 [root@cong11 ~]# make install

 檢測命令執(zhí)行結(jié)果

 [root@cong11 ~]# echo $?

 0

2.2.11、 修改mysql目錄權(quán)限

 [root@cong11 mysql-5.7.26]# chown -R mysql:mysql /usr/local/mysql/

2.2.12、 生成my.cnf配置文件

 備份配置文件文件

 [root@cong11 ~]# mv /etc/my.cnf{,.bak}     === mv /etc/my.cnf  /etc/my.cnf.bak

 自行創(chuàng)建my.cnf配置文件

 [root@cong11 ~]# vim /etc/my.cnf

 [mysqld]

 basedir=/usr/local/mysql         #mysql安裝目錄

 datadir=/usr/local/mysql/data     #mysql數(shù)據(jù)存放目錄

 port=3306                   #mysql監(jiān)聽端口

 socket=/usr/local/mysql/mysql.sock #mysql.sock文件存放目錄

 symbolic-links=0               #關(guān)閉mysql的符號鏈接

 character-set-server=utf8        #指定mysql的字符集為utf8

 log-error=/usr/local/mysql/log/mysqld.log     #指定mysql的錯誤日志存放路徑

 pid-file=/usr/local/mysql/mysqld.pid #mysql的pid文件存放目錄

 注意:所有my.cnf指定的目錄mysql用戶都要有讀寫權(quán)限。symbolic-links符號鏈接支持在別的目錄下存放mysql的數(shù)據(jù)庫文件,當(dāng)我們mysql數(shù)據(jù)盤滿了以后,可以啟動symbolic-links=1(允許使用符號鏈接),把mysql的數(shù)據(jù)放在別的目錄下,然后鏈接到mysql的datadir目錄下。

2.2.13、 生成服務(wù)啟動腳本

 [root@cong11 ~]#  cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

 [root@cong11 ~]# chmod +x /etc/init.d/mysqld   #給腳本添加執(zhí)行權(quán)限

2.2.14、 添加mysqld開機(jī)自啟動

 [root@cong11 ~]# chkconfig --add mysqld      #把mysql添加到系統(tǒng)服務(wù)

 [root@cong11 ~]# chkconfig mysqld on        #把mysql添加到開機(jī)自啟動

 [root@cong11 ~]# chkconfig --list mysqld      #查看mysql開機(jī)自啟動狀態(tài)

 MySQL 5.7版本編譯安裝的詳細(xì)教程

  

2.2.15、 初始化數(shù)據(jù)庫(創(chuàng)建數(shù)據(jù)庫的系統(tǒng)表)

 如果無法初始化先啟動mysql

 [root@cong11 ~]# /usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql \

  --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

  

2.2.16、 啟動服務(wù)

 [root@cong11 ~]# /etc/init.d/mysqld  start

 Starting MySQL SUCCESS!

2.2.17、 添加path路徑:

 添加mysql命令路徑到path環(huán)境變量中或者把mysql命令路徑軟連接到path環(huán)境變量里已經(jīng)存在的目錄,這樣我們可以在系統(tǒng)任意位置直接執(zhí)行mysql相關(guān)命令

 [root@cong11 ~]# vim /etc/profile 添加下面2行 在文件的結(jié)尾

 export MYSQL_HOME=/usr/local/mysql

 export PATH=$PATH:$MYSQL_HOME/bin

 使修改生效

 [root@cong11 ~]# source /etc/profile

 或者:

 [root@cong11 ~]# ln -s /usr/local/mysql/bin/* /usr/local/bin/

2.2.18、 修改mysql密碼:

 [root@cong11 ~]# mysqladmin -u root password "123456"

 或者登陸到mysql修改密碼

 [root@cong11 ~]# mysql

 mysql> set password for 'root'@'localhost'=password('123456');

2.2.19、 登陸mysql

 [root@cong11 ~]# mysql -uroot -p123456

 mysql> show databases;

 +--------------------+

 | Database           |

 +--------------------+

 | information_schema |

 | mysql              |

 | performance_schema |

 | sys                |

 +--------------------+

 4 rows in set (0.00 sec)  

管理員忘記MySQL密碼后怎么操作。

1.首先編寫 /etc/my.cnf

skip-grant-tables

2.重啟mysql服務(wù)

[root@Centos4 ~]# /etc/init.d/mysqld stop

[root@Centos4 ~]# /etc/init.d/mysqld start

3.進(jìn)入mysql

[root@Centos4 ~]# mysql //此時敲回車可直接進(jìn)入

mysql> update mysql.user set authentication_string=password('123.com') where user='root';

mysql>FLUSH PRIVILEGES;  //刷新用戶授權(quán)信息

以上表示將root密碼更新為123.com

4.再次編輯/etc/my.cnf文件將skip-grant-tables移除

5.再次輸入密碼即可

[root@Centos4 ~]# mysql -u root -p

看完MySQL 5.7版本編譯安裝的詳細(xì)教程這篇文章,大家覺得怎么樣?如果想要了解更多相關(guān),可以繼續(xù)關(guān)注我們的行業(yè)資訊板塊。

分享標(biāo)題:MySQL5.7版本編譯安裝的詳細(xì)教程
網(wǎng)站地址:http://chinadenli.net/article20/ihogjo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗關(guān)鍵詞優(yōu)化網(wǎng)站改版網(wǎng)站設(shè)計移動網(wǎng)站建設(shè)動態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)