1、新建用戶和組
groupadd -g 500 mysql useradd -g 500 -u 500 -d /dev/null -s /sbin/nologin -M mysql
2、下載
cd /usr/local/src wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz tar -zxvf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz -C /usr/local/ cd /usr/local/ mv mysql-5.7.18-linux-glibc2.5-x86_64 mysql-5.7.18 ln -s /usr/local/mysql-5.7.18 /usr/local/mysql cd mysql chown -R mysql:mysql *
3、新建數據目錄和日志目錄
日志目錄: mkdir -p /home/logs/mysql chown -R mysql.mysql /home/logs/mysql 數據目錄: mkdir -p /home/mysql/mysql3306 chown -R mysql.mysql /home/mysql/mysql3306
4、初始化數據庫
cd /usr/local/mysql/bin/ ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/home/mysql/mysql3306 --explicit_defaults_for_timestamp
輸出內容如下:
重點是最后一行的root密碼
2020-04-13T13:51:35.964708Z 0 [Warning] InnoDB: New log files created, LSN=45790 2020-04-13T13:51:36.068639Z 0 [Warning] InnoDB: Creating foreign key constraint system tables. 2020-04-13T13:51:36.124853Z 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: e43c70cd-7d8d-11ea-b8ba-00163e328f78. 2020-04-13T13:51:36.125628Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened. 2020-04-13T13:51:36.126152Z 1 [Note] A temporary password is generated for root@localhost: b5J6)&&f;dJN
5、修改my.cnf配置文件
# more /etc/my.cnf [mysqld] datadir=/home/mysql/mysql3306 socket=/tmp/mysql3306.sock user=mysql # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 [mysqld_safe] log-error=/home/logs/mysql/mysqld3306.log pid-file=/home/mysql/mysql3306/mysqld3306.pid
6、啟動mysql並登陸數據庫修改root密碼
啟動mysql /usr/local/mysql/bin/mysqld_safe & 登陸mysql /usr/local/mysql/bin/mysql -uroot -p -S /tmp/mysql3306.sock 輸入4中的輸出密碼“b5J6)&&f;dJN” SET PASSWORD = PASSWORD('your_new_password'); flush privileges; exit
7、配置mysql開機自啟動,並使用新密碼登陸
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld chkconfig mysqld on mysql -uroot -p -S /tmp/mysql3306.sock 輸入新的密碼登陸成功。
8、驗證mysqld服務是否啟停正常
service mysqld status service mysqld start service mysqld stop service mysqld restart