Linux 安裝二進位制MySQL 及 破解MySQL密碼
1.確保系統中有依賴的libaio 軟體,如果沒有:
yum -y install libaio
2.解壓二進位制MySQL軟體包
tar xf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz -C /usr/local
3.進入/usr/local
cd /usr/local
4.將軟體包修改名字或者建立個軟連線
mv mysql-5.7.24-linux-glibc2.12-x86_64/ mysql
ln -s mysql-5.7.24-linux-glibc2.12-x86_64/ mysql
5.新增mysql使用者和組
useradd -M -s /sbin/nologin mysql
6.修改當前目錄擁有者為新建的mysql使用者
chown -R mysql:mysql /usr/local/mysql
7.初始化mysql資料庫(建立預設的庫和表)
/usr/local/mysql/bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize
初始化資料庫後在最後面會生成個密碼,要記住這個密碼,用它來進入資料庫
8. 修改/etc/my.cnf檔案
vim /etc/my.cnf
[mysqld]
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
[mysqld_safe]
log-error=/usr/local/mysql/data/mysql.log
pid-file=/usr/local/mysql/data/mysql.pid
9.將mysql服務新增到系統服務中
cp mysql/support-files/mysql.server /etc/init.d/mysqld
chown +x /etc/init.d/mysqld
chkconfig --add mysqld
10.開啟mysql
systemctl start mysqld
檢視下服務是否開啟: netstat -lnpt |grep 3306
11.建立個軟連結:
ln -s /usr/local/mysql/bin/* /bin/
12.進入mysql資料庫:
mysql -uroot -p'初始化生成的密碼'
exit 退出資料庫
13.修改mysql密碼;
mysqladmin -uroot -p'初始化生成的密碼' password '你想要修改的密碼'
==============================================================================
如果忘記mysql密碼:
1. 先停止mysql的執行:
systemctl stop mysqld
2.確保沒有與mysql相關的程序:
ps aux |grep mysqld
3. 跳過授權表啟動服務:
mysqld_safe --skip-grant-tables & (放到後臺去執行)
mysql 直接進入mysql資料庫
mysql>show databases;
+-----------------------------+
| Database |
+-----------------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+-------------------------------+
4 rows in set (0.01 sec)
mysql> use mysql
mysql> show tables;
mysql> desc user;
mysql> select user,authentication_string(儲存密碼的) from user;
mysql>update(更新) user set authentication_string=PASSWORD('你要設定的密碼') where user='root';
mysql>flush privileges; (重新整理授權表)
mysql>exit
退出後先將程序殺死
ps aux |grep mysqld
kill -9 程序號
然後開啟服務: systemctl start mysqld