一、實施背景
安裝Mysql數據庫mysql 5.7。node
實施過程:
在新服務器上安裝CentOS 6.7系統,並建立MySQL數據庫;
1.1軟件環境
數據庫軟件:
mysql-5.7.16-linux-glibc2.5-x86_64.tar
操做系統:
Linux CentOS 6.7 x86_64
1.2 數據庫環境
數據庫實例名:mysqlmysql
二、單機數據庫安裝
2.1 安裝包linux
2.2 安裝過程
軟件安裝過程:
1、 安裝以前先要檢查曾經是否搭建過Mysql數據庫,如有則刪除bash
檢查命令:rpm -qa | grep mysql
刪除命令:
普通刪除模式:rpm -e mysql
強力刪除模式:rpm -e --nodeps mysql
2、解壓安裝二進制包,解壓後有以下兩個包
tar -xvf mysql-5.7.16-linux-glibc2.5-x86_64.tar服務器
mysql-5.7.11-linux-glibc2.5-x86_64.tar.gz
mysql-test-5.7.11-linux-glibc2.5-x86_64.tar.gz
執行 rm -rf mysql-test-5.7.11-linux-glibc2.5-x86_64.tar.gz 操做socket
只須要mysql-5.7.11-linux-glibc2.5-x86_64.tar.gz 這個包便可。
3、創建用戶和目錄
將以前的用戶和組刪除乾淨,不然在後面的創建用戶mysql,組mysql會有報錯。
#userdel mysql
#groupdel mysqlide
創建目錄/home/mysql,此後mysql安裝在此目錄下面。測試
#mkdir /home/mysql
#mkdir -p /home/mysql/data
#groupadd mysql
#useradd -r -g mysql -d /home/mysql mysql
更改mysql的權限:chown mysql:mysql /home/mysql -R
注:修改完畢後進入home目錄下查看關於mysql相關的目錄是不是mysql:mysql權限,若不是則須要手動修改
4、準備環境已安裝完成,進行mysql環境的安裝
將前面獲得的mysql-5.7.16-linux-glibc2.5-x86_64.tar解壓至/home/mysql目錄下
#tar zxvf mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz -C /home/mysql
這時在 /home/mysql下獲得的解壓後的文件(mysql-5.7.11-linux-glibc2.5-x86_64)放置於mysql的家目錄下並更更名字:
#mv mysql-5.7.11-linux-glibc2.5-x86_64 /home/mysql/mysql
此後就能夠用/home/mysql/mysql來找到mysql的安裝目錄了
注意,若是mysql目錄下沒有data目錄,手動建一個。(見安裝過程第三步)
5、目錄權限設置
將mysql及其下全部的目錄全部者和組均設爲mysql:
#cd /home/mysql/mysql
#chown mysql:mysql -R .
6、初始化
#/home/mysql/mysql/bin/mysqld --initialize --user=mysql --datadir=/home/mysql/data --basedir=/home/mysql/mysql
初始化成功後出現以下信息:
201x-xx-xxT07:10:13.583130Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
201x-xx-xx T07:10:13.976219Z 0 [Warning] InnoDB: New log files created, LSN=45790
201x-xx-xx T07:10:14.085666Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
201x-xx-xx T07:10:14.161899Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 1fa941f9-effd-11e5-b67d-000c2958cdc8.
201x-xx-xx T07:10:14.165534Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
201x-xx-xx T07:10:14.168555Z 1 [Note] A temporary password is generated for root@localhost:
bs4*2#Y%B4T0 -- 初始密碼,記得保存
7、配置
將mysql/support-files下的my-default.cnf更名爲my.cnf,拷到/etc下(或者考到{mysql}下,而後做一個軟連接到/etc下):
#cp /home/mysql/mysql/support-files/my-default.cnf /etc/my.cnf
cp: overwrite `/etc/my.cnf'? Yes
# vi /etc/my.cnf
修改或添加my.cnf中關鍵配置:
[mysqld]
basedir = /home/mysql/mysql
datadir = /home/mysql/data
port = 3306
socket = /tmp/mysql.sock
[client]
socket = /tmp/mysql.sock
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES (建議忽略,樓主此處已註釋)
注意,tmp目錄不存在,建立。
8、設置mysql以服務運行而且開機啓動
將cd /home/mysql/mysql/support-files/mysql.server 拷貝爲/etc/init.d/mysql並設置運行權限
#cp /home/mysql/mysql/support-files/mysql.server /etc/init.d/mysql
#chmod +x /etc/init.d/mysql
把mysql註冊爲開機啓動的服務
#chkconfig --add mysql on
固然也能夠手動進行服務的開啓和關閉:
# /etc/init.d/mysql start
# /etc/init.d/mysql stop
# /etc/init.d/mysql start
三、驗證測試
3.1進入測試
# /home/mysql/mysql/bin/mysql -uroot -p
此時要求輸入密碼,就是前面初始化時生成的密碼。
連上後,在作任何操做前,mysql要求要改掉root的密碼後才能進行操做。
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
mysql> alter user 'root'@'localhost' identified by 'password';
3.2查看mysql是否運行
ps -ef|grep mysqld
netstat -lnp | grep -i mysql
擴展
實現功能:不須要每次進入mysql家目錄執行命令進入mysql數據庫,今擴展知識是加入環境變量
修改 bashrc 文件,不知道此文件在庫文件的哪一個地方的哥們,能夠經過"find / -name bashrc"找到;在文件最後一行添加:export PATH=/home/mysql/mysql/bin:$PATH;使環境變量生效:source ~/.bashrc