Linux原始碼安裝mysql步驟

2022-06-03 01:09:09 字數 2979 閱讀 2940

建立資料夾:

mkdir  /usr/local/webserver

安裝必要依賴包

yum -y install gcc gcc-c++ make ncurses-devel

安裝cmake包:

tar zxvf cmake-2.8.12.2.tar.gz

cd cmake-2.8.12.2

./bootstrap --prefix="/usr/local/webserver/cmake"  

make && make install

原始碼安裝ncurses:

tar zxvf ncurses-5.9.tar.gz

cd ncurses-5.9

./configure --prefix="/usr/local/webserver/ncurses" 

make && make install

安裝mysql原始碼(引數根據自己的配置來填寫):

tar zxvf mysql-5.6.17.tar.gz 

cd  mysql-5.6.17

/usr/local/webserver/cmake/bin/cmake . \

-dcmake_install_prefix="/usr/local/webserver/mysql" \

-dmysql_datadir="/usr/local/webserver/mysql/data" \

-dmysql_unix_addr="/usr/local/webserver/mysql/data/mysql.sock" \

-dmysql_tcp_port="3306" \

-ddefault_charset=utf8 \

-ddefault_collation=utf8_general_ci \

-dwith_extra_charsets=all \

-denabled_local_infile=1 \

-dwith_innobase_storage_engine=1 

make && make install

#mysql初始化(my.cnf可根據自己的配置進行修改)

my.cnf

[client]

port=3306

socket=/usr/local/webserver/mysql/data/mysql.sock

[mysqld]

port=3306

basedir=/usr/local/webserver/mysql

datadir=/usr/local/webserver/mysql/data

socket=/usr/local/webserver/mysql/data/mysql.sock

user=mysql

default-time-zone=system

character-set-server=utf8

default-storage-engine=innodb

#cp mysqlmysql-5.6.17/my.cnf /usr/local/webserver/mysql/

cd /usr/local/webserver/mysql/ 

chown -r mysql:mysql . 

./scripts/mysql_install_db \

--basedir="/usr/local/webserver/mysql" \

--datadir="/usr/local/webserver/mysql/data" \

--user=mysql

#目錄許可權

cd  /usr/local/webserver/mysql/ 

chown -r root . 

chown -r mysql data

#刪除多餘檔案和目錄

cd  /usr/local/webserver/mysql/ 

rm -rf copying readme install-binary docs man

#設定開機自動啟動mysql

cp  mysql-5.6.17/support-files/mysql.server /etc/init.d/mysqld

chmod +x /etc/init.d/mysqld

chkconfig --add mysqld

chkconfig mysqld on

****

#啟動mysql

service mysqld start

啟動報錯:

fatal error: can't open and lock privilege tables: table 'mysql.user' doesn't exist

解決方案:清理data資料目錄中的全部資料,然後從新初始化mysql:/scripts/mysql_install_db

#訪問許可權設定

/usr/local/webserver/mysql/bin/mysqladmin -uroot password "12344"

/usr/local/webserver/mysql/bin/mysql -uroot -p123456  

grant all privileges on *.* to 'root'@'%' identified by '123456';

#執行mysql_secure_installation進行優化

cd /usr/local/webserver/mysql/ 

./bin/mysql_secure_installation

注(按照自身的需要來選擇):

輸入密碼進入選擇

change the root password? [y/n]

remove anonymous users? [y/n]

disallow root login remotely? [y/n]

remove test database and access to it? [y/n]

reload privilege tables now? [y/n]

linux 原始碼安裝 mysql

系統centos 建立使用者 groupadd mysql useradd r g mysql s bin false mysql 建立資料儲存目錄 mkdir p data mysql db chown r mysql mysql data mysql db 安裝cmake 用來編譯 安裝編譯器等...

linux原始碼安裝mysql

首先原始碼安裝mysql需要搭建本地yum源,在上一節已經說過了,如果能聯網則不需要搭建。以下是安裝包的目錄結構,config目錄是配置檔案也就是my.cnf,這裡可以配置,安裝時將此檔案內容替換為 etc my.cnf soft目錄存放的是mysql的安裝tgr.gz包 將檔案都上傳到伺服器,使用...

Linux原始碼安裝MySQL

b 安裝詳情 c 編譯安裝 d 配置mysql環境變數 e 初始化系統資料庫 f 啟動服務 mysql使用cmake跨平台工具預編譯原始碼,用於設定mysql的編譯引數。如 安裝目錄 資料存放目錄 字元編碼 排序規則等。安裝最新版本即可。mysql原始碼中用到了c 的boost庫,要求必須安裝boo...