mysql5.6源碼安裝

1 編譯安裝

groupadd mysql
useradd mysql -g mysql -M -s /sbin/nologin
#增長一個名爲 mysql的用戶。
#-g:指定新用戶所屬的用戶組(group)
#-M:不創建根目錄
#-s:定義其使用的shell,/sbin/nologin表明用戶不能登陸系統。
wget ftp://mirror.switch.ch/mirror/mysql/Downloads/MySQL-5.6/mysql-5.6.39.tar.gz
yum install gcc gcc-c++ -y
yum install -y ncurses-devel
yum install -y cmake
yum install -y libaio
yum install -y bison
cmake ./ -DCMAKE_INSTALL_PREFIX=/app/mysql -DMYSQL_DATADIR=/app/mysql/data -DSYSCONFDIR=/app/mysql/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/tmp/mysqld.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
make -j && make install

  

參數說明python

# -DCMAKE_INSTALL_PREFIX=/usr/local/mysql          \    #安裝路徑mysql

# -DMYSQL_DATADIR=/usr/local/mysql/data            \    #數據文件存放位置c++

# -DSYSCONFDIR=/etc                                \    #my.cnf路徑web

# -DWITH_MYISAM_STORAGE_ENGINE=1                   \    #支持MyIASM引擎sql

# -DWITH_INNOBASE_STORAGE_ENGINE=1                 \    #支持InnoDB引擎shell

# -DWITH_MEMORY_STORAGE_ENGINE=1                   \    #支持Memory引擎數據庫

# -DWITH_READLINE=1                                \    #快捷鍵功能(我沒用過)bash

# -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock               \    #鏈接數據庫socket路徑app

# -DMYSQL_TCP_PORT=3306                            \    #端口socket

# -DENABLED_LOCAL_INFILE=1                         \    #容許從本地導入數據

# -DWITH_PARTITION_STORAGE_ENGINE=1                \    #安裝支持數據庫分區

# -DEXTRA_CHARSETS=all                             \    #安裝全部的字符集

# -DDEFAULT_CHARSET=utf8                           \    #默認字符

# -DDEFAULT_COLLATION=utf8_general_ci

 

2 配置

./scripts/mysql_install_db --datadir=/app/mysql/data
#在安裝目錄下,把配置庫安裝到mysql
[root@webmaster data]# ls /app/mysql/data
ibdata1  ib_logfile0  ib_logfile1  mysql  performance_schema  test
#在數據目錄下能夠發現數據文件
chown -R mysql:mysql ./*
#將整個安裝目錄給mysql用戶
[root@mysql mysql]# cat my.cnf 
#[mysql]
#socket = /tmp/mysqld.socket

[mysqld]
basedir = /app/mysql
datadir = /app/mysql/data
port = 3306
# server_id = .....
socket = /app/mysql/lib/mysqld.socket
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 

[mysqld_safe]
log-error=/app/mysql/log/mysqld.log
pid-file=/app/mysql/lib/mysqld.pid

  

3 啓動

bin/mysqld_safe --user=mysql &
[root@mysql mysql]# ps aux| grep mysqld | grep -v grep
root      12260  0.0  0.1 113260  1628 pts/0    S    19:31   0:00 /bin/sh ./bin/mysqld_safe --user=mysql
mysql     12484  0.1 44.8 1364192 448760 pts/0  Sl   19:31   0:00 /app/mysql/bin/mysqld --basedir=/app/mysql --datadir=/app/mysql/data --plugin-dir=/app/mysql/lib/plugin --user=mysql --log-error=/app/mysql/log/mysqld.log --pid-file=/app/mysql/lib/mysqld.pid --socket=/app/mysql/lib/mysqld.socket --port=3306
root      12623  0.0  0.2 131300  2736 pts/0    S+   19:33   0:00 ./bin/mysql -uroot -S /app/mysql/lib/mysqld.socket -p

 

./bin/mysqladmin -uroot password -S /app/mysql/lib/mysqld.socket
#修改密碼
./bin/mysql -uroot -S /app/mysql/lib/mysqld.socket -p
#進入mysql
相關文章
相關標籤/搜索