這篇文章將為大家詳細(xì)講解有關(guān)MySQL如何源碼安裝5.7-17-19版本,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、小程序定制開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了通海免費(fèi)建站歡迎大家使用!
由于項(xiàng)目需要,現(xiàn)在要使用5.7.19版本的mysql
1:首先下載mysql 二進(jìn)制安裝文件
mysql-5.6.19.tar.gz
存放目錄/mysql/mysql-5.6.19.tar.gz
tar -xf mysql-5.6.19.tar.gz
cd mysql-5.6.19
進(jìn)行cmake,但是提示Cmake版本過低,至少需要2.8的版本
2:下載cmake
cmake-2.8.10.2.tar.gz
tar -xf cmake-2.8.10.2.tar.gz
./configure
make && make install
3:進(jìn)行cmake
先創(chuàng)建mysql 安裝目錄以及數(shù)據(jù)文件存放目錄
mkdir -p /mysql/mysql
mkdir -p /mysql/mysql/data
同時(shí)需要創(chuàng)建mysql 賬號
useradd mysql
passwd mysql
再進(jìn)行目錄授權(quán):
chown -R mysql:mysql /mysql
這個(gè)是5.7.17版本的編譯安裝
cd mysql-5.6.17
cmake \
-DCMAKE_INSTALL_PREFIX=/mysql/ \ //mysql軟件安裝的根目錄
-DMYSQL_DATADIR=/mysql/data \ //mysql 數(shù)據(jù)文件存放目錄
-DSYSCONFDIR=/etc \ //mysql 配置文件(my.cnf)目錄
-DWITH_MYISAM_STORAGE_ENGINE=1 \ //存儲引擎選項(xiàng)
-DWITH_INNOBASE_STORAGE_ENGINE=1 \ //以啟用InnoDB、引擎支持:
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \ //啟用加載本地?cái)?shù)據(jù)
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \ //默認(rèn)字符集
-DDEFAULT_COLLATION=utf8_general_ci //字符集校對
進(jìn)行編譯,編譯時(shí)報(bào)錯如下:
heck size of wctype_t - done
-- Check size of wint_t
-- Check size of wint_t - done
-- Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)
CMake Error at cmake/readline.cmake:85 (MESSAGE):
Curses library not found. Please install appropriate package,
remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel.
Call Stack (most recent call first):
cmake/readline.cmake:128 (FIND_CURSES)
cmake/readline.cmake:202 (MYSQL_USE_BUNDLED_EDITLINE)
CMakeLists.txt:411 (MYSQL_CHECK_EDITLINE)
這個(gè)報(bào)錯是提示缺少ncurses-devel依賴包
進(jìn)行下載:ncurses-devel-5.7-3.20090208.el6.x86_64.rpm
rpm -ivh ncurses-devel-5.7-3.20090208.el6.x86_64.rpm
warning: ncurses-devel-5.7-3.20090208.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Preparing... ########################################### [100%]
1:ncurses-devel ########################################### [100%]
同時(shí)rm -rf CMakeCache.txt 然后進(jìn)行重新cmake
完成之后,進(jìn)行make && make install 進(jìn)行mysql 安裝
- Installing: /mysql/man/man1/msql2mysql.1
-- Installing: /mysql/man/man8/mysqld.8
-- Installing: /mysql/support-files/solaris/postinstall-solaris
算安裝完成了,接下來就需要進(jìn)行配置
這是5.7.17的步驟
4: 進(jìn)入到mysql的安裝目錄,/mysql下:進(jìn)行mysql 數(shù)據(jù)庫初始化
scripts/mysql_install_db --basedir=mysql --datadir=/mysql/data --user=mysql //初始化mysql數(shù)據(jù)庫
但是報(bào)錯
[root@db_test scripts]# ./mysql_install_db --basedir=mysql --datadir=/mysql/data --user=mysql
FATAL ERROR: Could not find ./bin/my_print_defaults
cd /u01/soft/mysql-5.6.17/support-files
cp my-default.cnf /usr/local/mysql/my.cnf //copy配置文件
[root@db_test support-files]# chown -R mysql:mysql /mysql
vi /my.cnf 添加以下內(nèi)容
[mysqld]
basedir = /mysql
datadir = /mysql/data
log-error = /mysql/mysql_error.log
pid-file = /mysql/mysql.pid
user = mysql
tmpdir = /tmp
初始化mysql數(shù)據(jù)庫
[root@db_test scripts]# ./mysql_install_db --basedir=/mysql --datadir=/mysql/data --user=mysql
Installing MySQL system tables...2017-05-11 15:01:56 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2017-05-11 15:01:56 8161 [Note] InnoDB: Using atomics to ref count buffer pool pages
2017-05-11 15:01:56 8161 [Note] InnoDB: The InnoDB memory heap is disabled
2017-05-11 15:01:56 8161 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2017-05-11 15:01:56 8161 [Note] InnoDB: Compressed tables use zlib 1.2.3
2017-05-11 15:01:56 8161 [Note] InnoDB: Using CPU crc32 instructions
2017-05-11 15:01:56 8161 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2017-05-11 15:01:56 8161 [Note] InnoDB: Completed initialization of buffer pool
2017-05-11 15:01:56 8161 [Note] InnoDB: Highest supported file format is Barracuda.
2017-05-11 15:01:56 8161 [Note] InnoDB: Log scan progressed past the checkpoint lsn 1600617
2017-05-11 15:01:56 8161 [Note] InnoDB: Database was not shutdown normally!
2017-05-11 15:01:56 8161 [Note] InnoDB: Starting crash recovery.
2017-05-11 15:01:56 8161 [Note] InnoDB: Reading tablespace information from the .ibd files...
2017-05-11 15:01:56 8161 [Note] InnoDB: Restoring possible half-written data pages
2017-05-11 15:01:56 8161 [Note] InnoDB: from the doublewrite buffer...
或使用下列命令把mysql添加為系統(tǒng)服務(wù)
cd/mysql/support-files/
cp ./mysql.server /etc/init.d/mysqld
/etc/init.d/mysqld start
在配置環(huán)境變量
export PATH=$PATH:/mysql/bin
[mysql@db_test ~]$ mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.6.17 Source distribution
Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| test |
+--------------------+
2 rows in set (0.00 sec)
5:5.7.19版本的安裝步驟
5.7.19版本安裝是時(shí)候提示
CMake Error at cmake/boost.cmake:81 (MESSAGE):
You can download it with -DDOWNLOAD_BOOST=1 -DWITH_BOOST=<directory>
所以下載boost軟件
[root@localhost ~]# wget http://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz
tar -xf boost_1_59_0.tar.gz
cp -r boost_1_59_0 /usr/local/boost
進(jìn)行安裝
cmake \
-DCMAKE_INSTALL_PREFIX=/mysql/mysql \
-DMYSQL_DATADIR=/mysql/mysql/data \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_USER=mysql \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DENABLE_DOWNLOADS=1 \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=/usr/boost
完成之后,進(jìn)行make && make install
時(shí)間很長,可以出去抽根煙。
配置環(huán)境變量
export PATH=/mysql/mysql/bin:/mysql/mysql/lib:$PATH
時(shí)間很長
cd mysql/bin
./mysqld --initialize-insecure --user=mysql --basedir=/mysql/mysql --datadir=/mysql/data
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysqld
[root@localhost mysql]# chmod a+x /etc/init.d/mysqld
再編輯/etc/my.cnf
[mysqld]
datadir=/mysql/data
socket=/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
[mysqld_safe]
log-error=/mysql/mysql/logs/mysqld.log
pid-file=/mysql/mysql/logs/mysqld.pid
[client]
default-character-set=utf8
socket=/mysql/mysql.sock
[mysql]
default-character-set=utf8
socket=/mysql/mysql.sock
啟動mysql
[root@localhost mysql]# service mysqld start
Starting MySQL.2018-08-30T01:45:21.383785Z mysqld_safe error: log-error set to '/mysql/mysql/logs/mysqld.log', however file don't exists. Create writable for user 'mysql'.
The server quit without updating PID file (/mysql/data/loca[失敗]localdomain.pid)
報(bào)錯,需要創(chuàng)建文件。
[root@localhost logs]# touch mysqld.log
[root@localhost logs]# touch mysqld.pid
[root@localhost logs]# chown -R mysql:mysql /mysql
[root@localhost mysql]# service mysqld start
Starting MySQL. [確定]
[root@localhost mysql]#
[mysql@localhost ~]$ mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.19 Source distribution
Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
mysql>
再修改root的密碼
Database changed
mysql> select host,user,authentication_string from user;
+-----------+---------------+-------------------------------------------+
| host | user | authentication_string |
+-----------+---------------+-------------------------------------------+
| localhost | root | |
| localhost | mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| localhost | mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
+-----------+---------------+-------------------------------------------+
3 rows in set (0.00 sec)
mysql> UPDATE user SET authentication_string=PASSWORD('shenzhen#123')WHERE user='root';
Query OK, 1 row affected, 1 warning (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 1
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> select host,user,authentication_string from user;
+-----------+---------------+-------------------------------------------+
| host | user | authentication_string |
+-----------+---------------+-------------------------------------------+
| localhost | root | *4E25F9206A350692D2F5AC0512B41C69759FF312 |
| localhost | mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| localhost | mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
+-----------+---------------+-------------------------------------------+
3 rows in set (0.00 sec)
mysql>
mysql>
關(guān)于“mysql如何源碼安裝5.7-17-19版本”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
本文名稱:mysql如何源碼安裝5.7-17-19版本
文章鏈接:http://jinyejixie.com/article22/pppgjc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊、移動網(wǎng)站建設(shè)、定制開發(fā)、商城網(wǎng)站、網(wǎng)頁設(shè)計(jì)公司、Google
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)