如何編譯安裝MySQL資料庫

2021-10-09 06:15:41 字數 3690 閱讀 5671

一台centos 7.6 虛擬機器

把mysql的壓縮包拖到xshell中

安裝環境依賴包

yum install -y \

ncurses \

ncurses-devel \

bison \

cmake

建立使用者

useradd -s /sbin/nologin mysql
解壓縮並放到指定目錄中

tar zxvf mysql-5.7.17.tar.gz -c /opt/

tar zxvf boost_1_59_0.tar.gz -c /usr/local/

路徑優化

cd /usr/local

mv boost_1_59_0 boost

安裝軟體依賴包

cd /opt/mysql-5.7.17/

yum install gcc gcc-c++ -y

[root@localhost mysql-5.7.20]# cmake \

-dcmake_install_prefix=/usr/local/mysql \ '指定安裝路徑'

-dmysql_unix_addr=/usr/local/mysql/mysql.sock \ '連線資料庫'

-dsysconfdir=/etc \ '配置檔案路徑'

-dsystemd_pid_dir=/usr/local/mysql \ 'pid檔案指定路徑'

-ddfault_charset=utf8 \ '字符集'

-ddefault_collation=utf8_general_ci \

-dwith_innobase_storage_engine=1 \ '儲存引擎'

-dwith_archive_storage_engine=1 \

-dwith_blackhole_storage_engine=1 \

-dwith_perfschema_storage_engine=1 \

-dmysql_datadir=/usr/local/mysql/data \ '資料存放位置'

-dwith_boost=/usr/local/boost \ 'c++庫'

-dwith_systemd=1 '開啟必要程序'

------------注意:如果在cmake的過程中有報錯,當報錯解決後,需要把原始碼目錄中的cmakecache.txt檔案刪除,然後再重新cmake

編譯安裝

make&&make install
給mysql工作目錄賦予許可權

chown -r mysql.mysql /usr/local/mysql/
調整配置檔案

[root@localhost opt]# vim /etc/my.cnf

[client]

port = 3306

default-character-set=utf8

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

[mysql]

port = 3306

default-character-set=utf8

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

[mysqld]

user = mysql

basedir = /usr/local/mysql

datadir = /usr/local/mysql/data

port = 3306

character_set_server=utf8

pid-file = /usr/local/mysql/mysqld.pid

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

server-id = 1

sql_mode=no_engine_substitution,strict_trans_tables,no_auto_create_user,no_auto_value_on_zero,no_zero_in_date,no_zero_date,error_for_division_by_zero,pipes_as_concat,ansi_quotes

將配置宣告到環境變數中去

echo 'path=/usr/local/mysql/bin:/usr/local/mysql/lib:$path' >> /etc/profile

echo 'export path' >> /etc/profile

source執行檔案

source /etc/profile
初始化資料庫

[root@localhost opt]# cd /usr/local/mysql/

[root@localhost mysql]# bin/mysqld \

--initialize-insecure \

--user=mysql \

--basedir=/usr/local/mysql \

--datadir=/usr/local/mysql/data

將service服務啟動指令碼放到systemd目錄下執行

cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/
systemctl daemon-reload

systemctl start mysqld

netstat -ntap | grep 3306

設定為開機自啟動

systemctl enable mysqld
設定密碼

mysqladmin -u root -p password "19961207"
登入資料庫,輸入密碼

mysql -u root -p
授權遠端登入

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

mysql> show databases;

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

| database |

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

| information_schema |

| mysql |

| performance_schema |

| sys |

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

4 rows in set (0.00 sec)

MySQL資料庫的編譯安裝

yum y install gcc gcc c make ncurses ncurses devel bison cmake依賴包的說明 gcc c語言的編譯器 gcc c c 的編譯器 make 源 編譯 源 轉換成二進位制檔案 root localhost useradd s sbin nolo...

如何安裝MySQL資料庫

2.解壓mysql安裝包到指定目錄,我的目錄為c mysql,並複製乙份my default.ini檔案備用。修改my default.ini檔案 basedir c mysql datadir c mysql data port 3306 注意 去掉原始檔上述三行前面的 新增環境變數 新建系統變數...

mysql資料庫包如何安裝 mysql資料庫安裝

解壓後的安裝包 2 資料庫進行初始化 1 cmd進入解壓目錄的bin目錄下,執行命令 mysqld initialize insecure 使用管理員許可權進入cmd 2 初始化後,解壓目錄會有多出data目錄 3 啟動服務端 mysqld,此時服務端已啟動 4 windows服務,進入mysql的...