MySQL 常用命令


添加初次登录密码:

mysqladmin  -uroot  -p password xxx;

在mysql5.7以后已经改变了。可能会生成~/.mysql_secret的默认密码。

利用默认密码登录后,在进行root用户密码修改。


登陆后> flush  privileges;

#privileges 特权,权限


登录用户:

mysql -uxxx -p

之后输入密码


MySQL自动补全:

vim /etc/my.cnf


[mysql]

#no-auto-rehash

auto-rehash


#重启mysql

systemctl restart mysqld




新建数据库:

CREATE DATABASE xxx;

SHOW DATABASES;


新建表:

CREATE TABLE table_name(column_name column_type,zhang char);


新建用户:

CREATE USER username@localhost  IDENTIFIED BY  '密码';

flush  privileges;


添加新用户并授权:

grant  select  on  database.*  to user@host  identified  by  "password"

grant  select,insert,update, delete  on  *.* to test1@'%'  Identified  by  “abc”;

grant  select,insert,update,delete  on  mydb.*  to  test2@localhost  identified  by  “abc”; 

grant  select,insert,update,delete  on  mydb.*  to  test2@localhost  identified  by  "";  #无密码

#grant 权限1,权限2,…权限n on 数据库名.表名称 to 用户名@用户地址 identified by ‘连接口令’;


授权远程连接mysql:

grant all privileges on *.* to 'username'@'hostip' identified by 'password';

#grant all privileges on *.* to 'username'@'hostip'identified by 'password' with grant option 赋予这个用于赋予权限的权限;

flush privileges;


修改密码:

UPDATE  mysql.user  SET  password=PASSWORD('新密码')  WHERE  User='xxx';

#在mysql5.7以后,password选项变为了 authentication_string。

UPDATE  mysql.user  SET  authentication_string =PASSWORD('新密码')  WHERE  User='xxx';

#修改root密码

UPDATE  mysql.user  SET  authentication_string =PASSWORD('root')  WHERE  User='xxx';  


FLUSH  PRIVILEGES;


忘记密码:

在 “my.cnf” 或“my.ini”文件的 “mysqld” 配置段添加 “skip-grant-tables”,然后重新启动mysql 即可登录修改 root 密码。

vim /etc/my.cnf

skip-grant-tables


连接mysql:

mysql  -h主机地址   -u用户名   -p用户密码


查看所有数据库:

SHOW  DATABASES;


显示 xx 数据库中的数据表:

USE  xxx;

SHOW  TABLES;


显示数据表的结构:

DESCRIBE  表名;


建立数据表:

USE  库名;

CREATE  TABLE  表名(字段名 类型, 字段名1 INT, 字段名2 VARCHAR(20));


删除数据库:

DROP  DATABASES  库名;


删除数据表:

DROP  TABLES  表名;


将表中数据清空:

DELETE  FROM  表名;


显示表中的记录:

SELECT  *  FROM  表名  [  WHERE xxx [ ORDER  BY xxx ] [ GROUP  BY  xxx ] ]


向表中插入数据:

INSERT  INTO  表名(column_1, column_2)   VALUE( "xxx","xxx22");


更新表中的数据:

UPDATE  表名  SET  column=value,column2=value2  WEHER  column  column=xxx;


显示当前 User:

SELECT  USER();


数据备份:

mysqldump  -uuser -ppassword  --all-databases  >  mysqldump.sql  # 举例

##注意注意   如果因为密码过于复杂而无法登录,则需要加上 ' '--> 'password'

MySQL 常用命令_第1张图片


导入 .sql 文件:

USE  数据库名;

SOURCE  d:/mysql.sql;


导入文本数据:

LOAD  DATA  LOCAL  INFILE   "D:/mysql.txt"  INTO  TABLE  表名;


恢复数据库:

mysql  -uroot  -ppassword  数据库  <  test.sql(备份数据库)

你可能感兴趣的:(MySQL 常用命令)