Mysql 常用命令

1. 修改账号密码

1
2
-- 错误信息
ERROR 1045 (28000): Access denied for user 'ODBC'@'localhost' (using password: NO)
  1. 找到 my.ini 并在 [mysqld] 添加 skip-grant-tables 跳过鉴权,重启服务
  2. mysql -u root -p 直接回车进入
  3. 进入数据库:mysql> use mysql
  4. root 用户设置新密码:mysql> update user set password=password("root") where user="root";
  5. 刷新数据库:mysql> flush privileges;
  6. 退出:mysql:mysql> exit
  7. 注释掉跳过鉴权语句

2. 用户和赋权

2.1. 查看用户权限

1
SHOW GRANTS FOR 'student'@'localhost';

2.2. 建立用户并赋权

1
2
3
4
5
6
7
8
9
-- 创建用户 student,只能本地连接
CREATE USER 'student'@'localhost' IDENTIFIED BY 'Test@123456';
-- 可以远程连接
CREATE USER 'student'@'%' IDENTIFIED BY 'Test@123456';

-- 赋权 test 数据库所有权限
GRANT ALL PRIVILEGES ON `test`.* TO 'student'@'%';
-- 撤销用户的 localhost 赋权
REVOKE ALL PRIVILEGES ON `test`.* FROM 'student'@'localhost';

2.3. 查看所有用户

1
2
-- use mysql ,切换到 mysql 数据库
SELECT user, host FROM mysql.user;

2.4. 修改用户密码

1
ALTER USER 'username'@'%' IDENTIFIED BY 'password';

2.5. 删除指定用户

1
2
DROP USER 'username'@'host';
DELETE FROM mysql.user WHERE user='copote';

3. 命令行向表导入数据

  1. 查询 mysql 的指定文件夹,导入文件需放在该目录下,导出文件时候,也是将导出到这个文件夹里,使用其他文件夹可能会报错
1
SHOW VARIABLES LIKE '%secure%';
  1. 导入数据
1
load data infile '/var/lib/mysql-files/t_student.csv' into table t_student fields terminated by ',' lines terminated by '\r\n'
  1. 注意
  • 当文件在客户机端时,load data 后要增加 LOCAL,在服务器端时不用;