MySQL 常用命令

279 阅读1分钟
  • 修改密码 update user set authentication_string=password('1234') where user = 'root';

  • 刷新权限 flush privileges;

  • mysql在ubuntu上安装后,系统非root用户执行登录操作,出现如下情况:

ERROR 1698 (28000): Access denied for user 'root'@'localhost'

解决方法:

sudo vim /etc/mysql/my.cnf

[mysqld]
skip-grant-tables

MySQL 跨主机备份

mysqldump --host=旧主机 -u用户名 -p密码 --opt 数据库名 | mysql --host=新主机 -u用户名 -p密码 -C 新数据库名

MySQL 为 root 用户设置全部权限

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;

其中"."代表所有资源所有权限, “'root'@%”其中root代表账户名,%代表所有的访问地址。IDENTIFIED BY '密码',这里换成数据库root用户的密码,WITH GRANT OPTION表示允许级联授权。

MySQL 8 中使用以下写法

grant all privileges on *.* to 'root'@'%' ;

刷新访问权限表(不要忘了)

mysql> FLUSH PRIVILEGES;

查看用户表验证是否添加成功,查询结果出现最后一行表示添加权限成功

mysql> SELECT User, Password, Host FROM user;