1. 程式人生 > >Linux系統安裝MySQL5.7,授權遠程登陸

Linux系統安裝MySQL5.7,授權遠程登陸

word file 空間 useradd ncurses boost 二進制 lac abc

技術分享圖片
開始安裝前先關閉防火墻:
systemctl stop firewalld.service
Setenforce 0
首先安裝所需要的配置環境:
yum -y install ncurses ncurses-devel bison cmake gcc gcc-c++
之後創建mysql用戶:
useradd -s /sbin/nologin mysql
掃描共享的安裝包,mkdir創建一個掛載目錄(abc),掛載到abc目錄底下
(註:5.7版本內容較大,至少留出7、8個G的空間):
smbclient -L //ipaddress/
mount.cifs //ip/共享文件 /abc
之後解壓到opt目錄:
tar zxvf mysql-5.7.17.tar.gz -C /opt/
tar zxvf boost_1_59_0.tar.gz -C /usr/local/
將/usr/local/目錄下的boost _1_59_0 改名為boost,方便後期查看:
cd /usr/local/
mv boost_1_59_0 boost
轉到mysql-5.7.17目錄下,添加配置文件:
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DSYSCONFDIR=/etc \
-DSYSTEMD_PID_DIR=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=/usr/local/boost \
-DWITH_SYSTEMD=1
------註意:如果在CMAKE的過程中有報錯,當報錯解決後,需要把源碼目錄中的CMakeCache.txt文件刪除,然後再重新CMAKE,否則錯誤依舊------------
執行命令,一般的電腦的安裝過程大約需要40分鐘左右:
make && make install
更改屬主:
chown -R mysql.mysql /usr/local/mysql/
進入/etc/my.cnf/,將原有的【mysqld】內容刪除,改為:
[mysqld]
user = mysql
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
character_set_server=utf8
pid-file = /usr/local/mysql/mysqld.pid
log-error=/usr/local/mysql/data/mysql_error.log #錯誤日誌
general_log=ON #通用日誌
general_log_file=/usr/local/mysql/data/mysql_general.log #指定存放位置
log_bin=mysql-bin #二進制日誌
slow_query_log=ON #慢日誌
slow_query_log_file=mysql_slow_query.log
long_query_time=5
socket = /usr/local/mysql/mysql.sock
server-id = 1
其中,各種日誌文件也已經配置好路徑。
如果後期需要查看二進制目錄文件,
可以利用mysqlbinlog --no-defaults mysql-bin.000001進行解析轉碼。
添加sql支持各種模式:
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES
然後wq保存退出。
再次修改屬主到mysql:
chown mysql:mysql /etc/my.cnf
修改環境變量至/etc/profile/環境變量文件:
echo ‘PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH‘ >> /etc/profile
echo ‘export PATH‘ >> /etc/profile
讓其生效:
source /etc/profile
轉至/usr/local/mysql/目錄下,初始化數據庫:
bin/mysqld \
--initialize-insecure \ #指定密碼
--user=mysql \ #指定管理用戶
--basedir=/usr/local/mysql \ #制定工作目錄
--datadir=/usr/local/mysql/data #指定數據文件目錄
讓系統便於識別和管理:
cp usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/
systemctl daemon-reload
之後開啟mysql服務:
systemctl start mysqld
檢查3306端口查看是否開啟:
netstat -anpt | grep 3306
給root賬號設置密碼為“abc123”
mysqladmin -u root -p password "abc123"
首先回車確認空密碼,之後再用:
mysql -u root -p
輸入密碼後進入mysql就可以進行使用了。

同時讓此賬號和密碼授權遠程登陸(註意分號):
grant all privileges on . to ‘root‘@‘%‘ identified by ‘abc123‘ with grant option;

Linux系統安裝MySQL5.7,授權遠程登陸