實驗環境:
centos7.3主機一臺
http://mariadb.org/?下載最新源碼包mariadb10.2.8
準備二進制程序
]#?rz??????<===上傳,來自lrzsz包 ]#?tar?xvf?mariadb-10.2.8-linux-x86_64.tar.gz?-C?/usr/local/???<===-C?指定的路徑必須是這個,源碼里面定義的就是這個 ]#?cd?/usr/local/ ]#?ln?-s?mariadb-10.2.8-linux-x86_64/?mysql
centos7防火墻添加端口、用戶準備
]#?useradd?-r?-m?-d?/app/mysqldb?-s?/sbin/nologin?mysql???<===指定用戶家目錄為數據庫存放路徑/app/mysqldb
準備配置文件
]#mkdir?/etc/mysql ]#cp?/usr/local/mysql/support-files/my-large.cnf?/etc/mysql/my.cnf ]#?vim?/etc/mysql/my.cnf [mysqld] datadir???????????????=?/app/mysqldb??<===必須要添加的 innodb_file_per_table?=?ON skip_name_resolve?????=?ON????????<===禁止主機名解析
創建數據庫文件
]#cd?/usr/local/mysql/ ]#scripts/mysql_install_db?--datadir=/app/mysqldb?--user=mysql
配置環境變量
]#?vi?/etc/profile.d/mysql.sh? PATH=/usr/local/mysql/bin:$PATH
準備日志文件
]#mkdir?/var/log/mariadb ]#chown?mysql?/var/log/mariadb/
mysql登陸error1045、準備服務腳本啟動服務
]#?cd?/usr/local/mysql/ ]#?cp?support-files/mysql.server?/etc/init.d/mysqld ]#service?mysqld?start ]#?ss?-tanl????????????<===數據庫監聽在3306端口 State???????Recv-Q?Send-Q??????????Local?Address:Port???????????Peer?Address:Port?????????????? LISTEN??????0??????128?????????????????????????*:22??????????????*:*?????????????????? LISTEN??????0??????128????????????????????????:::22??????????????:::*?????????????????? LISTEN??????0??????80?????????????????????????:::3306????????????:::*
安全初始化
]#?mysql_secure_installation? NOTE:?RUNNING?ALL?PARTS?OF?THIS?SCRIPT?IS?RECOMMENDED?FOR?ALL?MariaDBSERVERS?IN?PRODUCTION?USE!??PLEASE?READ?EACH?STEP?CAREFULLY! In?order?to?log?into?MariaDB?to?secure?it,?we'll?need?the?current password?for?the?root?user.??If?you've?just?installed?MariaDB,?and you?haven't?set?the?root?password?yet,?the?password?will?be?blank, so?you?should?just?press?enter?here. Enter?current?password?for?root?(enter?for?none):? OK,?successfully?used?password,?moving?on... Setting?the?root?password?ensures?that?nobody?can?log?into?the?MariaDB root?user?without?the?proper?authorisation. Set?root?password??[Y/n]? New?password:? Re-enter?new?password:? Password?updated?successfully! Reloading?privilege?tables.....?Success! By?default,?a?MariaDB?installation?has?an?anonymous?user,?allowing?anyone to?log?into?MariaDB?without?having?to?have?a?user?account?created?for them.??This?is?intended?only?for?testing,?and?to?make?the?installation go?a?bit?smoother.??You?should?remove?them?before?moving?into?a production?environment. Remove?anonymous?users??[Y/n]?y...?Success! Normally,?root?should?only?be?allowed?to?connect?from?'localhost'.??This ensures?that?someone?cannot?guess?at?the?root?password?from?the?network. Disallow?root?login?remotely??[Y/n]?y...?Success! By?default,?MariaDB?comes?with?a?database?named?'test'?that?anyone?can access.??This?is?also?intended?only?for?testing,?and?should?be?removed before?moving?into?a?production?environment. Remove?test?database?and?access?to?it??[Y/n]?y-?Dropping?test?database......?Success!-?Removing?privileges?on?test?database......?Success! Reloading?the?privilege?tables?will?ensure?that?all?changes?made?so?far will?take?effect?immediately. Reload?privilege?tables?now??[Y/n]??...?Success! Cleaning?up... All?done!??If?you've?completed?all?of?the?above?steps,?your?MariaDB installation?should?now?be?secure. Thanks?for?using?MariaDB!