- 阿里雲的centos7的服務器
[root@izm5ecu9iant4iojp69m4dz ~]# mysql -V
mysql Ver 14.14 Distrib 5.7.27, for Linux (x86_64) using EditLine wrapper
- ##查看版本
[root@izm5ecu9iant4iojp69m4dz ~]# cat /proc/version
Linux version 3.10.0-514.26.2.el7.x86_64 ([email protected]) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC) ) #1 SMP Tue Jul 4 15:04:05 UTC 2017
- 查看版本
[root@izm5ecu9iant4iojp69m4dz ~]# uname -a
Linux izm5ecu9iant4iojp69m4dz 3.10.0-514.26.2.el7.x86_64 #1 SMP Tue Jul 4 15:04:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
- 查看位數
[root@izm5ecu9iant4iojp69m4dz ~]# getconf LONG_BIT
64
- 看版本 不知道爲啥看不了
[root@izm5ecu9iant4iojp69m4dz ~]# cat /etc/issue
\S
Kernel \r on an \m
- 修改mysql密碼
- 登錄進去後出現查看,查看用戶權限
mysql> show grants for root;
+----------------------------------+
| Grants for root@% |
+----------------------------------+
| GRANT USAGE ON *.* TO 'root'@'%' |
+----------------------------------+
1 row in set (0.00 sec)
- 只有一個數據庫,感覺不對,後來查資料得知進入一個匿名用戶裏,只能查看不能修改任何東西提示沒有權限。
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
+--------------------+
1 row in set (0.00 sec)
- 停掉數據庫
systemctl stop mysqld.service
mysqld_safe --skip-grant-table ##屏蔽權限 ,提示沒有mysqld_safe這個命令,好像的5.7.27版本里默認沒有這個
後來,
whereis mysqld_safe ##查看果然沒有這個命令
在my.cnf添加skip-grant-table後重啓服務器報錯,沒找出來爲啥會報錯
[root@izm5ecu9iant4iojp69m4dz mysql]# ps -ef|grep mysql
mysql 23352 1 0 22:24 ? 00:00:00 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid
mysql 23356 1 0 22:24 ? 00:00:00 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid
root 23371 2176 0 22:24 pts/0 00:00:00 grep --color=auto mysqldrwxr-x--x 5 mysql mysql 4096 Sep 17 20:50 mysql
[root@izm5ecu9iant4iojp69m4dz mysql]# kill -9 428 ##殺進程說是沒有這個進程
-bash: kill: (428) - No such process
數據庫處於活動狀態,卻是關閉狀態
日誌文件裏提示
2019-09-17T15:04:21.935243Z 0 [Note] Shutting down plugin 'InnoDB'
2019-09-17T15:04:21.937491Z 0 [Note] InnoDB: FTS optimize thread exiting.
2019-09-17T15:04:21.937679Z 0 [Note] InnoDB: Starting shutdown...一直啓動關閉,網上說是數據表損壞了,感覺莫名其妙,最後也沒有找到原因
2019-09-17T15:04:22.038034Z 0 [Note] InnoDB: Dumping buffer pool(s) to /var/lib/mysql/ib_buffer_pool
2019-09-17T15:04:22.038198Z 0 [Note] InnoDB: Buffer pool(s) dump completed at 19091
解決辦法:卸載重新安裝
卸載mysql數據庫
使用以下命令查看當前安裝mysql情況,查找以前是否裝有mysql
rpm -qa|grep -i mysq
[root@izm5ecu9iant4iojp69m4dz etc]# rpm -qa|grep -i mysq
mysql-community-common-5.7.27-1.el7.x86_64
mysql-community-libs-5.7.27-1.el7.x86_64
mysql-community-client-5.7.27-1.el7.x86_64
mysql-community-server-5.7.27-1.el7.x86_64
mysql57-community-release-el7-10.noarch
mysql-community-libs-compat-5.7.27-1.el7.x86_64
yum remove mysql-community-common-5.7.27-1.el7.x86_64 -y
yum remove mysql-community-libs-5.7.27-1.el7.x86_64 -y
yum remove mysql-community-client-5.7.27-1.el7.x86_64 -y
yum remove mysql-community-server-5.7.27-1.el7.x86_64 -y
yum remove mysql57-community-release-el7-10.noarch -y
yum remove mysql-community-libs-compat-5.7.27-1.el7.x86_64 -y
查看mysql的其它依賴:rpm -qa | grep -i mysql
- 刪除mysql文件目錄
使用命令查看mysql相關的文件目錄:find / -name mysql
/usr/share/mysql
/var/lib/mysql
/var/lib/mysql/mysql
/var/lib/mysql/mysql/mysql
/etc/selinux/targeted/active/modules/100/mysql
[root@izm5ecu9iant4iojp69m4dz etc]# rm -rf /usr/share/mysql
[root@izm5ecu9iant4iojp69m4dz etc]# rm -rf /var/lib/mysql
[root@izm5ecu9iant4iojp69m4dz etc]# rm -rf /var/lib/mysql/mysql
[root@izm5ecu9iant4iojp69m4dz etc]# rm -rf /var/lib/mysql/mysql/mysql
[root@izm5ecu9iant4iojp69m4dz etc]# rm -rf /etc/selinux/targeted/active/modules/100/mysql
[root@izm5ecu9iant4iojp69m4dz etc]# find / -name mysql
刪除完成
-
重新安裝
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
- 安裝rpm包
直接使用yum -y install 命令安裝mysql是無法安裝mysql的高級版本,需要先安裝帶有可用的mysql5系列社區版資源的rpm包,輸入如下命令進行安裝
rpm -Uvh mysql57-community-release-el7-10.noarch.rpm
- 查看mysql可用版本
然後使用如下命令查看mysql的可用版本
命令:yum repolist enabled | grep "mysql.*-community.*"
- 安裝mysql
然後就可以開始安裝mysql了,一般我們只需要安裝mysql-server和mysql-client就可以了。
輸入如下命令安裝開始安裝mysql
命令:yum -y install mysql-community-server
安裝過程中yum會自己檢測依賴包下載安裝,等待安裝完成即可
[root@izm5ecu9iant4iojp69m4dz ~]# yum repolist enabled | grep "mysql.*-community.*"
mysql-connectors-community/x86_64 MySQL Connectors Community 118
mysql-tools-community/x86_64 MySQL Tools Community 95
mysql57-community/x86_64 MySQL 5.7 Community Server 364
可以使用命令讓mysq服務加入開機啓動(可選):systemctl enable mysqld
- 開啓mysql服務
mysql安裝成功後使用命令開啓服務:systemctl start mysql
使用命令查看mysql狀態:systemctl status mysql
- 5.7.27版的安裝後默認有root密碼
查找mysql密碼
grep "password" /var/log/mysqld.log
進入後修改密碼
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
賦予所有權
GRANT select ON *.* TO 'root'@'%'IDENTIFIED BY'123456';
flush privileges;
完活!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!