安裝Apache
[root@localhost libgd-2.2.4]# cd ..
[root@localhost src]# cp -r apr-1.5.2 httpd-2.4.25/srclib/apr
[root@localhost src]# cp -r apr-util-1.5.4 httpd-2.4.25/srclib/apr-util
[root@localhost httpd-2.4.25]# ./configure --prefix=/usr/local/apache2/ --sysconfdir=/usr/local/apache2/etc/ --with-included-apr --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared
將Apache安裝所要的兩個(gè)包apr以及apr-util拷貝到Apache安裝文件的/srclib目錄下并更名,去掉版本號,然后執(zhí)行configure安裝,出現(xiàn)報(bào)錯(cuò)
- configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org/
安裝pcre
[root@localhost httpd-2.4.25]# cd ../pcre-8.39
[root@localhost pcre-8.39]# ./configure && make && make install
繼續(xù)安裝Apache
[root@localhost pcre-8.39]# cd -
/usr/local/src/httpd-2.4.25
[root@localhost httpd-2.4.25]# ./configure --prefix=/usr/local/apache2/ --sysconfdir=/usr/local/apache2/etc/ --with-included-apr --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared && make && make install
#######安裝ncurses
[root@localhost httpd-2.4.25]# yum install -y ncurses-devel
[root@localhost httpd-2.4.25]# cd ../ncurses-6.0
[root@localhost ncurses-6.0]# ./configure --with-shared --without-debug --without-ada --enable-overwrite && make && make install
#######安裝cmake和bison
[root@localhost ncurses-6.0]# cd ..
[root@localhost src]# yum install cmake bison -y
```
#######安裝mysql
這里的安裝配置為5.7版本 5.4版本略有不同詳見[plus mysql5.5版本的安裝配置]()
mysql5.7是需要boost, 5.5版本不需要 ,如若 5.7版本 linux無法聯(lián)網(wǎng)的話可以手動下載,再用xftp工具傳入linux
`mkdir /usr/local/boost`
不需要解壓直接tar.gz包放入這個(gè)目錄
5.4版本可以取消這個(gè)參數(shù)
-DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost/
5.6版本則必須添加這兩個(gè)參數(shù),其中Ddownload為1的話是進(jìn)行下載,如若有下載好的boost可以放在后面定義的目錄中并修改為0
```
[root@localhost src]# cd mysql-5.7.17
[root@localhost mysql-5.7.17]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306 -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost/
```
成功后顯示
>-- Build files have been written to: /usr/local/src/mysql-5.7.17
接下來make and make install 整個(gè)安裝大概需要持續(xù)50分鐘耐心等候
`make && make install`
創(chuàng)建mysql用戶及用戶組
```
[root@localhost mysql-5.7.17]# cd /usr/local/mysql/
[root@localhost mysql]# groupadd mysql
[root@localhost mysql]# useradd -g mysql mysql
[root@localhost mysql]# chown -R mysql .
[root@localhost mysql]# chgrp -R mysql .
```
創(chuàng)建數(shù)據(jù)庫目錄,并修改用戶為mysql
```
mkdir /home/data
chown mysql:mysql /home/data
```
數(shù)據(jù)庫初始化
`/usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/home/data`
注: 之前版本mysql_install_db是在mysql_basedir/script下,5.7放在了mysql_install_db/bin目錄下,且已被廢棄
“–initialize”會生成一個(gè)隨機(jī)密碼(~/.mysql_secret),而”–initialize-insecure”不會生成密碼
–datadir目標(biāo)目錄下不能有數(shù)據(jù)文件
如若出現(xiàn)報(bào)錯(cuò)mysqld_safe error: log-error set to '/var/log/mariadb/mariadb.log', however file don't exists. Create writable for user 'mysql'.
則手動創(chuàng)建目錄并賦予mysql權(quán)限
```
mkdir /var/log/mariadb
touch /var/log/mariadb/mariadb.log
chown -R mysql:mysql /var/log/mariadb
```
如若出現(xiàn)報(bào)錯(cuò)mysqld_safe Directory '/var/lib/mysql' for UNIX socket file don't exists.
```
mkdir -p /var/lib/mysql
chown mysql:mysql /var/lib/mysql
```
如若出現(xiàn)報(bào)錯(cuò)mysqld_safe mysqld from pid file /var/run/mariadb/mariadb.pid ended
`vi /etc/my.cnf`
把
>[mysqld_safe]
err-log=/var/log/mysqld.log
pid-file=/var/run/mysql/mysqld.pid
改成
>[mysqld_safe]
err-log=/var/log/mysqld.log
pid-file=/var/mysql/mysqld.pid
如若出現(xiàn)報(bào)錯(cuò)mysqld_safe error: log-error set to '/home/data//localhost.linux.err', however file don't exists. Create writable for user 'mysql'.
```
[root@localhost data]# touch /home/data//localhost.linux.err
[root@localhost data]# chown mysql:mysql /home/data//localhost.linux.err
```
數(shù)據(jù)庫初始化成功后啟動并設(shè)置密碼,注意密碼不能加引號5.7版本my-default.cnf 5.4版本為/my-medium.cnf
```
cd /usr/local/mysql
chown -R root .
cp support-files/my-default.cnf /etc/my.cnf
/usr/local/mysql/bin/mysqld_safe --user=mysql &
/usr/local/mysql/bin/mysqladmin -uroot password newpassword
```
然后mysql就安裝成功了,可以使用以下命令進(jìn)入數(shù)據(jù)庫
`/usr/local/mysql/bin/mysql -uroot -p`
tips
修改數(shù)據(jù)庫root用戶密碼
方法1: 用SET PASSWORD命令
`mysql>SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');`
方法2:用mysqladmin
`shell>/usr/local/mysql/bin/mysqladmin -u root password "newpass"`
如果root已經(jīng)設(shè)置過密碼,采用如下方法
`shell>/usr/local/mysql/bin/mysqladmin -u root password oldpass "newpass"`
方法3: 用UPDATE直接編輯user表
mysql新版本中authentication_string是新的用戶密碼字段,之前為password,后面的PASSWORD是mysql的一個(gè)加密函數(shù),后面newpassword改為你修改后的密碼
```mysql> use mysql;
mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root';
mysql> UPDATE user SET authentication_string = PASSWORD('newpass') WHERE user = 'root';
mysql> FLUSH PRIVILEGES;
```
如若忘記root用戶密碼或者找不到生成的臨時(shí)密碼,詳情見[error]()
配置遠(yuǎn)程登錄mysql
`mysql>grant all privileges on *.* to 'root'@'192.168.1.114' identified by '112233Qq.' with grant option`
允許192.168.1.114這個(gè)ip地址以root用戶密碼為112233Qq.登錄到本機(jī)數(shù)據(jù)庫