找回密码
进入/etc/mysql目录,编辑mysqld.cnf文件。在文件最后一行加入配置“skip-grant-tables”,执行命令“service mysql restart”重启mysql。
执行mysql命令,可以正确登陆mysql。
修改mysql密码
use mysql
update mysql.user set authentication_string=password('123') where user='root';
连接数据库
mysql -u root -p -h 192.168.99.2 -P 3306
- 查看当前是哪个用户
select user(); - 查看当前所使用的数据库
select database(); - 查看当前数据库版本
select version(); - 查看mysql的当前状态
show status; - 查看mysql的参数
show variables: - 修改mysql的参数
mysql> show variables like "max_connect%";
+--------------------+-------+
| Variable_name | Value |
+--------------------+-------+
| max_connect_errors | 100 |
| max_connections | 151 |
set global max_connect_errors=1000;
使用set global 可以临时修改某些参数,但是重启后这些修改会失效,如想令永恒生效,就要在配置文件my.cnf中定义。 - 查看当前mysql服务器的队列
这个在日常的管理工作中最为频繁,因为使用它可以查看当前mysql在干什么,也可发现是否有锁表
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)
允许远程用户登录访问mysql的方法
方法一、本地登入mysql,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,将"localhost"改为"%"
mysql -u root -proot
mysql>use mysql;
mysql>update user set host = '%' where user = 'root';
mysql>select host, user from user;
方法二、直接授权(推荐)
从任何主机上使用root用户,密码:youpassword(你的root密码)连接到mysql服务器:
mysql -u root -proot
mysql>GRANT ALL PRIVILEGES ON . TO ['root'@'%'](mailto: root @ %) IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
操作完后切记执行以下命令刷新权限
FLUSH PRIVILEGES