LINUX下編譯安裝最新版本mysql

2021-09-06 10:48:28 字數 4138 閱讀 5275

通過參考其他文章

(1)先安裝cmake(mysql5.5以後是通過cmake來編譯的)

[root@ rhel5 local]#

tar -zxv -f cmake-2.8.11.2.tar.gz[root@ rhel5 local]#

cd cmake-2.8.11.2[root@ rhel5 cmake-2.8.4]#

./configure[root@ rhel5 cmake-2.8.4]#

make[root@ rhel5 cmake-2.8.4]#

make install

說明缺少c++編譯器,因此安裝 yum -y install gcc-c++

(2)建立mysql的安裝目錄及資料庫存放目錄

[root@ rhel5~]#

mkdir -p /usr/local/mysql //安裝mysql [root@ rhel5~]#

mkdir -p /usr/local/mysql/data //存放資料庫

(3)建立mysql使用者及使用者組

[root@ rhel5~]groupadd mysql

[root@ rhel5~]useradd -r -g mysql mysql

(4)安裝mysql

[root@ rhel5 local]#

tar -zxv -f mysql-5.5.30.tar.gz[root@ rhel5 local]#

cd mysql-5.5.30[root@ rhel5 mysql-5.5.10]#

cmake

. -dcmake_install_prefix=/usr/local/mysql

-dmysql_datadir=/usr/local/mysql/data

-ddefault_charset=utf8(可有可無)

-ddefault_collation=utf8_general_ci (可有可無)

-dextra_charsets=all 

-denabled_local_infile=1

[root@ rhel5 mysql-5.5.10]#

make[root@ rhel5 mysql-5.5.10]#

make install

引數說明:

-dcmake_install_prefix=/usr/local/mysql //安裝目錄

-dinstall_datadir=/usr/local/mysql/data //資料庫存放目錄

-ddefault_charset=utf8 //使用utf8字元

-ddefault_collation=utf8_general_ci //校驗字元

-dextra_charsets=all //安裝所有擴充套件字符集

-denabled_local_infile=1 //允許從本地匯入資料

注意事項:

重新編譯時,需要清除舊的物件檔案和快取資訊。

# make clean

# rm -f cmakecache.txt

# rm -rf /etc/my.cnf

2.配置

(1)設定目錄許可權

[root@ rhel5~]#

cd /usr/local/mysql

[root@ rhel5 mysql]#

chown -r root:mysql . //把當前目錄中所有檔案的所有者所有者設為root,所屬組為mysql

[root@ rhel5 mysql]#

chown -r mysql:mysql data

(2)

[root@ rhel5 mysql]#

cp support-files/my-medium.cnf /etc/my.cnf //將mysql的啟動服務新增到系統服務中

(3)建立系統資料庫的表

[root@ rhel5 mysql]#

cd /usr/local/mysql[root@ rhel5 mysql]#

scripts/mysql_install_db --user=mysql //這個是必須的,這是初始化資料庫,否則會提示很多警告和錯誤

(4)設定環境變數

[root@ rhel5~]#

vi /root/.bash_profile

在path=$path:$home/bin新增引數為:

path=$path:$home/bin:/usr/local/mysql/bin:/usr/local/mysql/lib

[root@ rhel5~]#

source /root/.bash_profile

(5)手動啟動mysql

[root@ rhel5~]#

cd /usr/local/mysql

[root@ rhel5 mysql]#

./bin/mysqld_safe --user=mysql &   //啟動mysql,但不能停止

啟動日誌寫在此檔案下:/usr/local/mysql/data/localhost.err (這裡記錄了mysql所有啟動時提示的各種資訊,包括錯誤資訊)

關閉mysql服務

[root@ rhel5 mysql]#

mysqladmin -u root -p shutdown  //這裡mysql的root使用者還沒有配置密碼,所以為空值。需要輸入密碼時,直接點回車鍵即可。

(6)另一種簡單的啟動mysql的方法(mysql已經被新增到系統服務中)

[root@ rhel5~]#

service mysql.server start [root@ rhel5~]#

service mysql.server stop[root@ rhel5~]#

service mysql.server restart

如果上述命令出現:mysql.server 未識別的服務

則可能mysql還沒新增到系統服務中,下面用另一種方法新增:

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

將mysql的啟動服務新增到系統服務中

注意:主要是將mysql.server拷貝到/etc/init.d中,命名為mysql。在有的系統中,mysql.server在/usr/local/mysql/share/mysql/mysql.server中,而本系統中,mysql.server在/usr/local/mysql/support-files/mysql.server中。

然後再用#service mysql start 來啟動mysql即可。

(7)修改mysql的root使用者的密碼以及開啟遠端連線

[root@ rhel5~]#

mysql -u root mysql

mysql>use mysql;

mysql>desc user;

mysql> grant all privileges on *.* to root@"

%" identified by "

root

";  //為root新增遠端連線的能力。

mysql>update user set password = password('******') where user='root';

mysql>select host,user,password from user where user='root';

mysql>flush privileges;

mysql>exit

重新登入:mysql -u root -p

若還不能進行遠端連線,則關閉防火牆

[root@ rhel5~]#

/etc/rc.d/init.d/iptables stop

注:如果不能遠端連線,出現錯誤mysql error number 1130,則加入下面語句試試:

mysql>grant all privileges on *.* to 'root'@'%' identified by '******' with grant option;

cimoc 最新版 Cimoc最新版本

cimoc最新版本擁有超豐富的熱門漫畫資源,讓你在每乙個無聊的時間裡都可以自由閱讀好看的漫畫,每一本漫畫都擁有自己的標籤,讓使用者們可以通過這些標籤找到更多相似型別的漫畫,並且所有漫畫資源都可以讓你免費暢讀,看到好看的漫畫不要猶豫,直接點進去就能 cimoc最新版本 軟體特色 1.中漫 日漫 韓漫,...

CentOS下Python最新版本安裝

1 檢視當前python的安裝路徑和版本號 1 2 3 4 which python usr bin python python vpython 2.4.3 當前版本 1 2 3 4 5 6 7 8 9 10 11 因為3.以上的版本變化較大,有些軟體需要在2.的版本的話可以用 備份舊版本的pyth...

mysql 最新版本 mysql最新版本是多少

mysql 8.0 正式版 8.0.11 已發布,官方表示 mysql 8 要比 mysql 5.7 快 2 倍,還帶來了大量的改進和更快的效能!注意 從 mysql 5.7 公升級到 mysql 8.0 僅支援通過使用 in place 方式進行公升級,並且不支援從 mysql 8.0 降級到 m...