找回密碼
進(jìn)入/etc/mysql目錄,編輯mysqld.cnf文件。在文件最后一行加入配置“skip-grant-tables”,執(zhí)行命令“service mysql restart”重啟mysql。
執(zhí)行mysql命令,可以正確登陸mysql。
修改mysql密碼
use mysql
update mysql.user set authentication_string=password('123') where user='root';
連接數(shù)據(jù)庫(kù)
mysql -u root -p -h 192.168.99.2 -P 3306
- 查看當(dāng)前是哪個(gè)用戶
select user(); - 查看當(dāng)前所使用的數(shù)據(jù)庫(kù)
select database(); - 查看當(dāng)前數(shù)據(jù)庫(kù)版本
select version(); - 查看mysql的當(dāng)前狀態(tài)
show status; - 查看mysql的參數(shù)
show variables: - 修改mysql的參數(shù)
mysql> show variables like "max_connect%";
+--------------------+-------+
| Variable_name | Value |
+--------------------+-------+
| max_connect_errors | 100 |
| max_connections | 151 |
set global max_connect_errors=1000;
使用set global 可以臨時(shí)修改某些參數(shù),但是重啟后這些修改會(huì)失效,如想令永恒生效,就要在配置文件my.cnf中定義。 - 查看當(dāng)前mysql服務(wù)器的隊(duì)列
這個(gè)在日常的管理工作中最為頻繁,因?yàn)槭褂盟梢圆榭串?dāng)前mysql在干什么,也可發(fā)現(xiàn)是否有鎖表
mysql> show processlist;
+----+------+-----------+-------+---------+------+----------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+------+-----------+-------+---------+------+----------+------------------+
| 7 | root | localhost | mysql | Query | 0 | starting | show processlist |
| 8 | root | localhost | NULL | Sleep | 23 | | NULL |
+----+------+-----------+-------+---------+------+----------+------------------+
2 rows in set (0.00 sec)
允許遠(yuǎn)程用戶登錄訪問mysql的方法
方法一、本地登入mysql,更改 "mysql" 數(shù)據(jù)庫(kù)里的 "user" 表里的 "host" 項(xiàng),將"localhost"改為"%"
mysql -u root -proot
mysql>use mysql;
mysql>update user set host = '%' where user = 'root';
mysql>select host, user from user;
方法二、直接授權(quán)(推薦)
從任何主機(jī)上使用root用戶,密碼:youpassword(你的root密碼)連接到mysql服務(wù)器:
mysql -u root -proot
mysql>GRANT ALL PRIVILEGES ON . TO ['root'@'%'](mailto: root @ %) IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
操作完后切記執(zhí)行以下命令刷新權(quán)限
FLUSH PRIVILEGES