????????centos7.3上二進制安裝mariadb-10.2.8-linux-x86_64

1、查看是否安裝mariadb

????????rpm -qa mariadb*

????????如果已經安裝就卸載。

2、下載mariadb最新版本

????????yum info mariadb

????????官網地址:http://mariadb.org ?

? ? 下載:mariadb-10.2.8-linux-x86_64.tar.gz

3、創建mysql用戶

???? rpm 安裝時會自動創建mysql用戶,這里需要手動創建

? ? ??useradd -d /app/mysqldb ??-r -m -s /sbin/nologin mysql

????????????-d 設置家目錄;家目錄用來存放數據庫

????????????-r 創建系統用戶

????????????-m ?自己改權限

????????????-s ?設置登錄方式

4、任意目錄下導入文件,本實驗在/root

???????? rz? ?導入文件????

????? ? 解壓 tar xvf?mariadb-10.2.8-linux-x86_64.tar.gz -C /usr/local/

?????????解壓到固定目錄。這是在配置文件中已經寫固定了。

5、cd /usr/local/?

? ? ?解壓后的文件夾名必須為mysql,(1)可以改名(2)可以創建軟連接

??ln -s mariadb-10.2.8-linux-x86_64/ mysql ?創建軟連接

6、復制數據文件

????復制數據文件到指定目錄

cd /usr/local/mysql/

mkdir/etc/mysql/

?????cp support-files/my-huge.cnf? /etc/mysql/my.cnf (必須為這個名)

7、修改配置文件

????vim /etc/mysql/my.cnf

????添加這三條?

????[mysqld]??

????datadir ? ?=/app/mysqldb ? #數據庫存放位置

????innodb_file_per_table = on ? #一張表一個數據庫

????skip_name_resolve = on ? #開啟跳過名字解析

8、創建數據庫

cd /usr/local/mysql

?只能在這個目錄下執行命令,因為在編譯文件時已經寫固定。

scripts/mysql_install_db? --user=mysql --datadir=/app/mysqldb? 執行腳本,創建數據庫,指定用戶mysql,指定數據庫目錄/app/mysqldb

?ls /app/mysqldb??? 生成數據

9、復制腳本,啟動服務。

????????cp ?support-files/mysql.server ?/etc/init.d/mysqld

????????chkconfig--add mysqld ? ?添加該服務

?????????chkconfig --list mysqld ? ? ? ? ? ?查看是否添加成功

????????service mysqld start ?啟動服務失敗

10、創建日志文件

????????mkdir /var/log/mariadb/

?chown mysql /var/log/mariadb/ ?修改權限

? ? ? ?service ?mysqld start ? 啟動服務成功

11、方便使用命令:修改PATH路徑? ? ? ??

?????????vim /etc/profile.d/tesh.sh

????????????????PATH=/usr/local/mysql/bin:$PATH

? ? ? 執行該文件 source ?/etc/profile.d/tesh.sh

? ? ? ?在命令行查看是否修改成功? ?????

????????echo $PATH

/usr/local/mysql/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

12、因為mysql數據庫默認匿名登錄,且登錄沒有密碼,執行一下安全腳本

????????/usr/local/mysql/bin/mysql_secure_installation

? ? ? 因為前面PATH變量已經設置該文件的路徑,直接在命令行執行該腳本

????????mysql_secure_installation

????????Enter current password for root (enter for none):(輸入當前root的密碼,咩有直接回車)

????????Set root password? [Y/n] y ? ? 是否設置root密碼,選擇y? ?????

????????New password:?

????????Re-enter new password: ? ? ? 輸入兩次密碼

????????Remove anonymous users? [Y/n] y ? ? ?是否移除匿名登錄,選擇y

????????Disallow root login remotely? [Y/n] n ? ? ?是否允許root遠程登錄,選擇n,表示允許root遠程登錄

????????Remove test database and access to it? [Y/n] y ? ?是否移除test 數據庫,這個數據庫是空的,沒有意義,直接刪除。選擇y

????????Reload privilege tables now? [Y/n] y ? ? 是否前面的設置生效,修改等于提交,選擇y

13、設置密碼后下次登錄方式

????????mysql ?-uroot -p ? (指定登錄用戶root,-p輸入密碼)

???Enter password:?? ?