原始碼編譯安裝 MySQL 5 5 x 實踐

2021-08-07 11:28:10 字數 3846 閱讀 5532

1.安裝cmake

mysql從5.5版本開始,通過./configure進行編譯配置方式已經被取消,取而代之的是cmake工具。

因此,我們首先要在系統中原始碼編譯安裝cmake工具。

# wget

# tar zxvf cmake-2.8.4.tar.gz

# cd cmake-2.8.4

# ./configure

# make

# make install

2.確保以下所需系統軟體包已經被安裝

通過 rpm -qa | grep name 的方式驗證以下軟體包是否已全部安裝。

gcc* gcc-c++* autoconf* automake* zlib* libxml* ncurses-devel* libgcrypt* libtool*

3. 安裝前的系統設定

建立mysql安裝目錄及資料存放目錄

# mkdir /opt/mysql

# mkdir /opt/mysql/data

建立使用者和使用者組

# groupadd mysql

# useradd -g mysql mysql

賦予資料存放目錄許可權

# chown mysql:mysql -r /opt/mysql/data

4.從configure更換為cmake

我相信大多數人都已經習慣了之前的configure方式,並且所使用的引數也是比較個性化的,換成cmake之後,這一方面會帶來不少的麻煩。

還好,mysql的官方**提供了二者的引數對照表,我們可以盡可能的保留之前的引數,來編譯配置新的mysql版本。

configure 與 cmake 引數對照指南:

以我自己為例,之前我一直使用的引數為:

./configure --prefix=/opt/mysql/ \

--sysconfdir=/opt/mysql/etc \

--localstatedir=/opt/mysql/data \

--with-tcp-port=3306 \

--with-unix-socket-path=/tmp/mysqld.sock \

--with-mysqld-user=mysql \

--enable-assembler \

--with-extra-charsets=all \

--enable-thread-safe-client \

--with-big-tables \

--with-readline \

--with-ssl \

--with-embedded-server \

--enable-local-infile \

--with-plugins=partition,innobase,myisammrg

經過與cmake的引數對照之後,去除掉已經被取消的引數(大多數是因為新版本已經預設啟用),cmake的引數配置如下:

cmake -dcmake_install_prefix=/opt/mysql \

-dsysconfdir=/opt/mysql/etc \

-dmysql_datadir=/opt/mysql/data \

-dmysql_tcp_port=3306 \

-dmysql_unix_addr=/tmp/mysqld.sock \

-dmysql_user=mysql \

-dextra_charsets=all \

-dwith_readline=1 \

-dwith_ssl=system \

-dwith_embedded_server=1 \

-denabled_local_infile=1 \

-dwith_innobase_storage_engine=1

5.編譯安裝 mysql 5.5.x

# tar zxvf mysql-5.5.13.tar.gz

# cd mysql-5.5.13

# cmake -dcmake_install_prefix=/opt/mysql \

-dsysconfdir=/opt/mysql/etc \

-dmysql_datadir=/opt/mysql/data \

-dmysql_tcp_port=3306 \

-dmysql_unix_addr=/tmp/mysqld.sock \

-dmysql_user=mysql \

-dextra_charsets=all \

-dwith_readline=1 \

-dwith_ssl=system \

-dwith_embedded_server=1 \

-denabled_local_infile=1 \

-dwith_innobase_storage_engine=1

# make

# make install

在make與make install的時候可以看到進度百分比,感覺這一點要比configure方式要好。

6.配置並初始化資料庫

建立my.cnf配置檔案

# mkdir /opt/mysql/log

# mkdir /opt/mysql/etc

# cp support-files/my-medium.cnf /opt/mysql/etc/my.cnf

初始化資料庫

執行前需賦給scripts/mysql_install_db檔案執行許可權

# chmod 755 scripts/mysql_install_db

# scripts/mysql_install_db --user=mysql --basedir=/opt/mysql/ --datadir=/opt/mysql/data/

建立管理mysql資料庫的shell指令碼

# mkdir /opt/mysql/init.d

# cp support-files/mysql.server /opt/mysql/init.d/mysql

賦予shell指令碼可執行許可權:

# chmod +x /opt/mysql/init.d/mysql

啟動mysql:

# /opt/mysql/init.d/mysql start

通過命令列登入管理mysql伺服器(提示輸入密碼時直接回車):

# /opt/mysql/bin/mysql -u root -p -s /tmp/mysql.sock

輸入以下sql語句,建立乙個具有root許可權的使用者(admin)和密碼(12345678):

grant all privileges on *.* to 'admin'@'localhost' identified by '12345678';

grant all privileges on *.* to 'admin'@'127.0.0.1' identified by '12345678';

為root帳戶設定初始密碼

# /opt/mysql/bin/mysqladmin -u root password 'new-password'

刪除本機匿名連線的空密碼帳號

/opt/mysql/bin/mysql -uroot -p'new-password'

mysql>use mysql; //選擇系統資料庫mysql

mysql>select host,user,password from user; //檢視所有使用者

mysql>delete from user where password="";

mysql>flush privileges;

mysql>select host,user,password from user; //確認密碼為空的使用者是否已全部刪除

mysql>exit;

Linux 原始碼編譯安裝 MySQL 5 5 x

linux 環境 centos 6.5 1 安裝cmake mysql從5.5版本開始,通過.configure進行編譯配置方式已經被取消,取而代之的是cmake工具。因此,我們首先要在系統中原始碼編譯安裝cmake工具。root ruxingli soft wget解壓 root ruxingli...

Mysql 5 5 x安裝教程(windows)

概括 我是選用的是互動式的mysql5.5.59版本,之前在舊電腦安裝得好好得,今天重新安裝時候發現還是會有問題,就記錄下整個過程,主要涉及環境配置,使用者名稱登陸密碼。提取碼 u043 2 解壓縮到指定路徑 3 將解壓的路徑 f mysql mysql 5.5.59 winx64 bin 新增到環...

原始碼安裝mysql5 5

原始碼編譯安裝 mysql 5.5.13 實踐 1.安裝cmake mysql從5.5版本開始,通過.configure進行編譯配置方式已經被取消,取而代之的是cmake工具。因此,我們首先要在系統中原始碼編譯安裝cmake工具。wget tar zxvf cmake 2.8.7.tar.gz cd...