天天看點

從源代碼安裝mysql_源代碼安裝mysql

[[email protected] mysql]# ll /mnt/mysql/

total 39988

-rw-r--r--. 1 root root  5768373 Jul 20 19:25 cmake-2.8.10.2.tar.gz  #跨平台編譯工具

-rw-r--r--. 1 root root 35174149 Jul 20 19:20 mysql-5.6.10.tar.gz    #mysql服務

安裝源代碼安裝所需環境yum –disablerepo=\* --enablerepo=c6-mediagroupinstall “Development tools” –y

解壓縮到/usr/local/src[r[email protected]]# tar -zxvf cmake-2.8.10.2.tar.gz -C /usr/local/src

......(過程略)

[[email protected] mysql]# tar -zxvfmysql-5.6.10.tar.gz -C /usr/local/src

......(過程略)

進入/usr/local/src/cmake目錄,指定安裝目錄為/usr/local/[[email protected] cmake-2.8.10.2]# ./configure--prefix=/usr/local/

......(過程略)

[[email protected] cmake-2.8.10.2]#make &&make install

......(過程略)

進入/usr/local/mysql目錄(安裝之前記得解除安裝系統内的低版本mysql,不然會有沖突),進入後檢視一下,發現有一個名稱為INSTALL_SOURCE的檔案,用vim編輯器打開,在3788行左右,有該版本mysql的安裝過程

從源代碼安裝mysql_源代碼安裝mysql

Setup的過程

從源代碼安裝mysql_源代碼安裝mysql

用cmake編譯mysql源代碼(過程較耗時)[[email protected] mysql-5.6.10]# cmake .

......(過程略)

過程中會報錯,安裝ncurses和ncurses-devel即可

從源代碼安裝mysql_源代碼安裝mysql

yum–disablerepo=\* --enablerepo=c6-media install ncurses ncurses-devel –y

安裝完成後删除解壓的mysql代碼包,重新解壓縮在編譯即可[[email protected] mysql-5.6.10]#Make&& make install

建立使用者組musql[[email protected]]# groupadd mysql

建立使用者mysql并加入到mysql組[[email protected]]# useradd -r -g mysql mysql

進入到/usr/local/mysql目錄,修改所有檔案的使用者群組為mysql[[email protected] mysql]# chown -R mysql:mysql .

[[email protected] mysql]# ll

total 76

-rw-r--r--. 1 mysql mysql 17987 Jan 23  2013 COPYING

-rw-r--r--. 1 mysql mysql  7468 Jan 23  2013 INSTALL-BINARY

-rw-r--r--. 1 mysql mysql  2552 Jan 23  2013 README

drwxr-xr-x. 2 mysql mysql  4096 Jul 20 21:10bin

drwxr-xr-x. 4 mysql mysql  4096 Jul 20 21:09data

drwxr-xr-x. 2 mysql mysql  4096 Jul 20 21:09docs

drwxr-xr-x. 3 mysql mysql  4096 Jul 20 21:09include

drwxr-xr-x. 3 mysql mysql  4096 Jul 20 21:09lib

drwxr-xr-x. 4 mysql mysql  4096 Jul 20 21:10man

drwxr-xr-x. 10 mysql mysql  4096 Jul 20 21:10 mysql-test

drwxr-xr-x. 2 mysql mysql  4096 Jul 20 21:10scripts

drwxr-xr-x. 28 mysql mysql  4096 Jul 20 21:10 share

drwxr-xr-x. 4 mysql mysql  4096 Jul 20 21:10sql-bench

drwxr-xr-x.  3 mysql mysql 4096 Jul 20 21:10 support-files

安裝mysql預設資料庫,并指定運作使用者為mysql[[email protected]]# scripts/mysql_install_db --user=mysql

檢視/usr/local/mysql/data目錄生成的預設資料庫[[email protected] mysql]# ll data

total 110604

-rw-rw----. 1 mysql mysql 50331648 Jul 2022:12 ib_logfile0

-rw-rw----. 1 mysql mysql 50331648 Jul 2022:12 ib_logfile1

-rw-rw----. 1 mysql mysql 12582912 Jul 2022:12 ibdata1

drwxr-xr-x. 2 mysql mysql     4096 Jul 20 22:12 mysql

drwx------. 2 mysql mysql     4096 Jul 20 22:12 performance_schema

drwxr-xr-x.2 mysql mysql     4096 Jul 20 21:09 test

修改/usr/local/mysql/下的所有者為root[[email protected] mysql]# chown -R root .

[[email protected] mysql]# ll

total 80

-rw-r--r--. 1 root mysql 17987 Jan 23  2013COPYING

-rw-r--r--. 1 root mysql  7468 Jan 23  2013 INSTALL-BINARY

-rw-r--r--. 1 root mysql  2552 Jan 23  2013 README

drwxr-xr-x. 2 root mysql  4096 Jul 20 21:10bin

drwxr-xr-x. 5 root mysql  4096 Jul 20 22:12data

drwxr-xr-x. 2 root mysql  4096 Jul 20 21:09docs

drwxr-xr-x. 3 root mysql  4096 Jul 20 21:09include

drwxr-xr-x. 3 root mysql  4096 Jul 20 21:09lib

drwxr-xr-x. 4 root mysql  4096 Jul 20 21:10man

-rw-r--r--. 1 root root    943 Jul 20 22:12my.cnf

drwxr-xr-x. 10 root mysql  4096 Jul 20 21:10 mysql-test

drwxr-xr-x. 2 root mysql  4096 Jul 20 21:10scripts

drwxr-xr-x. 28 root mysql  4096 Jul 20 21:10 share

drwxr-xr-x. 4 root mysql  4096 Jul 20 21:10sql-bench

drwxr-xr-x.  3 root mysql 4096 Jul 20 21:10 support-files

特别的将/usr/local/mysql/data目錄的所有者改為mysql[[email protected] mysql]# chown -R mysql data

[[email protected] mysql]# ll -d data

drwxr-xr-x. 5 mysql mysql 4096 Jul 20 22:12data

拷貝mysql的主配置檔案到/etc/my.cnf[[email protected] mysql]# cpsupport-files/my-default.cnf /etc/my.cnf

将mysql的路徑添加到系統變量

從源代碼安裝mysql_源代碼安裝mysql

重新整理腳本并顯示[[email protected] mysql]# source /etc/profile

[[email protected] mysql]# echo $PATH

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

拷貝啟動控制腳本到/etc/init.d/ 并重命名為mysqld[[email protected] mysql]# cpsupport-files/mysql.server /etc/init.d/mysqld

添加mysql為開機自啟動[[email protected] mysql]# chkconfig --add mysqld

[[email protected] mysql]# chkconfig --list |grepmysqld

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

将mysql的lib庫動态連結到系統lib庫[[email protected] mysql]# touch/etc/ld.so.conf.d/mysql.conf

[[email protected] mysql]# echo"/usr/local/mysql/lib">>/etc/ld.so.conf.d/mysql

重新整理并檢視[[email protected] mysql]# ldconfig

[[email protected] mysql]# ldconfig -pv |grep mysql

libmysqlclient_r.so.16(libc6) => /usr/lib/mysql/libmysqlclient_r.so.16

libmysqlclient.so.16(libc6) => /usr/lib/mysql/libmysqlclient.so.16

将man手冊的路徑告訴系統,友善查找man的相關幫助資訊[[email protected] mysql]# echo "MANPATH/usr/local/mysql/man" >>/etc/man.config

為mysql的頭檔案庫建立連結[[email protected] include]# pwd

/usr/include

[[email protected] include]# ln -s/usr/local/mysql/include/ mysql

[[email protected] include]# ll |grep mysql

lrwxrwxrwx. 1 root root     25 Jul 20 22:51mysql -> /usr/local/mysql/include/

啟動mysql并檢查端口3306是否啟動[[email protected] include]# service mysqld start

Starting MySQL. SUCCESS!

[[email protected] include]# netstat -tupln |grepmysqld

tcp       0      0 :::3306                     :::*              LISTEN      6496/mysqld

為mysql資料庫設定登入密碼(初始密碼為空)[[email protected] include]# mysqladmin -u root -ppassword ‘123456‘

Enter password:

使用root賬号登入并建立資料庫[[email protected] include]# mysql -u root -p

Enter password:

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 6

Server version: 5.6.10 Source distribution

Copyright (c) 2000, 2013, Oracle and/or itsaffiliates. All rights reserved.

Oracle is a registered trademark of OracleCorporation and/or its

affiliates. Other names may be trademarksof their respective

owners.

Type ‘help;‘ or ‘\h‘ for help. Type ‘\c‘ toclear the current input statement.

mysql>

建立資料庫testdbmysql> create databases testdb;

ERROR 1064 (42000): You have an error inyour SQL syntax; check the manual that corresponds to your MySQL server versionfor the right syntax to use near ‘databases testdb‘ at line 1

mysql> create database testdb;

Query OK, 1 row affected (0.00 sec)

mysql> show databases;

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

| Database           |

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

| information_schema |

| mysql              |

| performance_schema |

| test               |

| testdb             |

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

5rows in set (0.00 sec)

檢視檔案中的資料庫testdb

從源代碼安裝mysql_源代碼安裝mysql

4、總結

注意源代碼安裝過程中的錯誤資訊提示,一般都是缺少庫檔案或者安裝工具,按照提示安裝即可。

本文出自 “卻邪水心泮” 部落格,請務必保留此出處http://shmilyfl.blog.51cto.com/8897986/1676461

源代碼安裝mysql

标簽:mysql 源代碼

本條技術文章來源于網際網路,如果無意侵犯您的權益請點選此處回報版權投訴

本文系統來源:http://shmilyfl.blog.51cto.com/8897986/1676461