1. 程式人生 > >源碼安裝mysql數據庫

源碼安裝mysql數據庫

user 系列 als ould 參考 datadir c-c 生效 c++

註:參考CSDN https://www.cnbloags.com/clsn/p/8038964.html#auto_id_17 可點擊查看更多數據庫結構知識

一:安裝背景

操作平臺:linux

工具準備:vmware、centos

註:若使用ubuntu,安裝命令行改為apt -get。redhat系列能加載RPM包,Debian系列加載deb包

二:安裝步驟

2.1環境變量說明(可忽略)

[root@db02 ~]# cat /etc/redhat-release

CentOS release 6.9 (Final)

[root@db02 ~]# uname -r

2.6.32-696.el6.x86_64

[root@db02 ~]# /etc/init.d/iptables status

iptables: Firewall is not running.

2.2MYSQL的編譯安裝

1.安裝依賴包

yum  install  -y  ncurses-devel libaio-devel

2.安裝cmake編譯工具

yum -install -cmake 也可通過源碼下載

useradd -s /sbin/nologin -M mysql

參數說明:

  • useradd 添加用戶
  • -s 指定登錄shell ,本出指向nologin,表示不登陸只用戶管理員權限
  • -M 不指定根目錄,入托添加目錄 -d pathname 並chown -R mysql:mysql pathname 賦予權權限

2.3.安裝編譯

mkdir -p /data/mysql

chown -R mysql:msyql /data/mysql

cd /data/mysql

wget -q http://mirrors.163.com/mysql/Downloads/MySQL-5.6/mysql-5.6.40.tar.gz

備註:如果下載多個文件 可以新建file 將多個 URL以換行的形式寫入文件 ,wget filename 即可同事下載

tar -zxvf mysql-5.6.27.tar.gz

cd mysql-5.6.27

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql

-DMYSQL_DATADIR=/mysql/data

-DDEFAULT_CHARSET=utf8

-DDEFAULT_COLLATION=utf8_general_ci

-DWITH_EXTRA_CHARSETS:STRING=all

-DWITH_DEBUG=0

-DENABLED_LOCAL_INFILE=1

編譯出錯:

-- Running cmake version 2.8.12.2
-- Could NOT find Git (missing:  GIT_EXECUTABLE)
-- The C compiler identification is unknown
-- The CXX compiler identification is unknown

解決辦法 :安裝 GIT、C和CXX包 yun install -y GIT gcc gcc-c++ 另外需要刪除rm CMakeCache.txt

參考博文:http://www.mamicode.com/info-detail-1161602.html

make && make install 耗時很長

2.4 數據庫安裝後操作

初始化數據庫: ./data/mysql/scripts/mysql_install_db --user=mysql --datadir=/data/mysql --datadir為數據存放目錄,--database為安裝目錄

復制配置文件: cp /data/mysql/ support-files/my-default.cnf /etc/my.cnf

cp support-files/mysql.server /etc/init.d/mysqld mysql的啟動腳本,一般都有deamon守護進程

chmod 700/etc/init.d/mysqld

添加環境變量:echo ‘ /data/mysql/bin/:$PATH’>>/etc/profile 重定向符將路徑添加profile文件,也可vim直接添加

source /etc/profile source可以使修改配置文件生效,無需重啟系統

2.5 數據庫安全設置

mysqladmin -uroot password ‘cnp200@HW‘
mysql -uroot -pcnp200@HW
select user,host from mysql.user;
show databases

技術分享圖片

源碼安裝mysql數據庫