mysql罏在十三_第十三章、MYSQL常用操作

13.1 设置更改root密码

13.2 连接mysql

13.3 mysql常用命令

13.4 mysql用户管理

13.5 常用sql语句

13.6 mysql数据库备份恢复

13.1 设置更改root密码

• /usr/local/mysql/bin/mysql -uroot

• #更改环境变量PATH,增加mysql绝对路径,就可直接mysql -uroot

export PATH=$PATH:/usr/local/mysql/bin/

#让该命令永久生效,将上面添加PATH的命令放到/etc/prefile文件里面,然后source  /etc/prefile,让配置立即生效

mysql -uroot -p123456    #-p输入密码 ,密码正确进入mysql

#密码最好加上单引号,因为如果密码含有特殊字符便识别不了

mysqladmin -uroot password '123456'

#设置mysql的root用户密码

mysqladmin -uroot -p '123456'  password '1234'            #更改root密码

密码重置(不知道密码)

1、编辑mysql配置文件

vi /etc/my.cnf

#增加一行内容  skip-grant

#skip-grant 表示忽略授权,即不用用户名密码可以直接登录

2、 重启mysql服务,让前面的配置生效

/etc/init.d/mysqld restart

3、登录mysql,更改mysql库的用户密码表,达到重新设置密码的目的

mysql -uroot               #登录mysql

use mysql;                   #切换到mysql库

update user set password=password('123456') where user='root';           #修改root密码为123456

4、编辑mysql配置文件,将增加的skip-grant删掉,然后重启mysqld服务

13.2 连接mysql

连接mysql的命令

mysql -uroot -p123456

#连接本机mysql

mysql -uroot -p123456 -h127.0.0.1 -P3306

#连接远程mysql,需要-h输入ip,还有-P指定端口

mysql -uroot -p123456 -S/tmp/mysql.sock

#通过-S指定socket文件进行链接(只适用于本机)

mysql -uroot -p123456 -e “show databases”

#-e选项,不进入mysql对数据库的内容进行操作(一般使用在shell脚本里面)

#不进入mysql将所有的数据库列出来

13.3 mysql常用命令

1、查询库show databases;

2、切换库      use mysql;

3、 查看库里的表     show tables;

4、查看表里的字段  desc tb_name;

5、 查看建表语句

show create table tb_name\G;

#\G的作用是使数据排列整齐

6、 查看当前用户select user();

#会将ip反解析成主机名,跟在用户名后面

7、查看当前使用的数据库  select databsase();

8、创建库    create database db1;

9、创建表

use db1;

create table t1(`id` int(4), `name` char(40));

10、查看查看创建表的语句

show create  tables  t1\G;

#mysql默认的字符集是latin1,可以修改,只需要在创建表的语句指定字符集,比如: create table t1(`id` int(4), `name` char(40)) ENGINE=InnoDB DEFAULT  CHARSET=utf8

#在不想执行的语句开头加上#号,语句便不执行

11、删除表     drop  table t1;

12、查看当前数据库版本   select version();

13、 查看数据库状态     show status;

14、查看各参数

show variables; #查看所有参数

show variables like 'max_connect%';

#查看指定参数包含max_connect,%表示通配

15、修改参数

set global max_connect_errors=1000;

16、查看队列

show processlist;  #最后一列不完整

show full processlist;#加上full,最后一列完整列出

#使用mysql数据库后会在root目录下生成.mysql_history的文件,可以查看mysql命令历史

13.4 mysql用户管理

#grant语句是不会记录到命令历史里面的,因为不安全

grant语句说明:

#grant指定权限,@后面指定用户只能通过来源ip进行登录或者localhost,identified by指定用户密码

#@指定localhost时,对应的是socket文件

grant all on *.* to 'user1'@'127.0.0.1   identified by 'passwd';

#创建mysql用户user1,设定密码为passwd,授于所有权限,限定只能通过127.0.0.1进行登录

grant SELECT,UPDATE,INSERT on db1.* to 'user2'@'192.168.233.1' identified by 'passwd';

#创建用户user2,密码为passwd,授予允许在db1库查,改,增的权限,限定只能192.168.233.1进行登录

grant all on db1.* to 'user3'@'%' identified by 'passwd'

#%表示通配,这里指的是所有的ip

#创建user3,密码为passwd,授于所有权限,允许所有ip进行登录

show grants;        #查看当前用户的权限语句

show grants for user2@192.168.233.1;

#查看指定用户的授权语句

退出mysql的三种方式:

1、quit

2、exit

3、CTRL+D

13.5 常用sql语句

1、select查看语句

select count(*) from mysql.user;

#count指的是行数,库和表之间用"."点进行隔开

#查看mysql库中user表的行数

当使用select * from的操作时,(建议少用这个*操作)

mysql库里面所有的表默认使用的引擎是MyISAM,该引擎会自动统计表的行数,所以就算用*操作时查询会快一点;

但是其他库里面所有的表默认使用的引擎是InnoDB,用*操作时会很慢,很消耗内存。

select * from mysql.db;

#这里的*指的是所有内容

#查看mysql库的db表的所有内容

select db from mysql.db;

#查看mysql库的db表的db字段

select db,user from mysql.db;

#查看mysql库的db表的db字段和user字段

#多个字段查询用逗号隔开即可","

select * from mysql.db where host like '192.168.%';

#模糊查询,查看mysql库的db表中与192.168.%有关的内容

2、insert插入语句

insert into db1.t1 values (1, 'abc');

#在db1库的t1表内插入数据(1,'abc')

desc db1.t1;

insert into db1.t1 values (1, 'abc');

select * from  db1.t1;

3、update更改语句

update db1.t1 set name='aaa' where id=1;

#更改db1库t1表内id=1的行的name字段为aaa

#where前面的条件是查找,后面的条件是替换

4、delete删除表内容

delete  from  db1.t1 where  id=2;

#删除db1库t1表内id=2的行

5、truncate清空表内容

truncate table db1.t1;

#将db1库t1表的内容清空

6、drop删除表或库

drop table db1.t1;

#删除db1.t1表

drop database db1;

#删除db1库

delete、truncate、drop的区别

1、delete、truncate只是删除表的内容,表结构没有变化

2、drop直接删除表,表结构发生变化

13.6 mysql数据库备份恢复

#备份用mysqldump,恢复用mysql

1、备份库

语法:

mysqldump  -uroot -p密码  备份的库名

mysqldump -uroot -p123456 mysql > /tmp/mysql.sql

#将备份的mysql库重定向到/tmp/mysql.sql文件内

2、恢复库

mysql -uroot -p123456 mysql < /tmp/mysql.sql

演示:创建一个新的库mysql2,然后将备份的mysql库数据传到mysql2库

mysql -uroot -p123456 -e "create database mysql2"      #创建mysql2库

mysql -uroot -p123456 mysql < /tmp/mysql.sql

将备份的/tmp/mysql.sql 文件反向重定向到mysql2库

3、备份表

mysqldump -uroot -p123456 mysql user > /tmp/user.sql文件

#备份mysql库的user表到/tmp/user.sql

4、恢复表

mysql -uroot -p123456 mysql < /tmp/user.sql

#要恢复表只需要写表所在的库名即可

5、备份所有库-A

mysqldump -uroot -p123456  -A >/tmp/123.sql

#-A表示所有all的意思

#备份所以库到/tmp/123.sql文件

6、只备份表结构-d

mysqldump -uroot -p123456 -d mysql > /tmp/mysql.sql

#备份mysql库中的表结构

扩展

13.1 设置更改root密码

13.2 连接mysql

13.3 mysql常用命令

13.4 mysql用户管理

13.5 常用sql语句

13.6 mysql数据库备份恢复

13.1 设置更改root密码

• /usr/local/mysql/bin/mysql -uroot

• #更改环境变量PATH,增加mysql绝对路径,就可直接mysql -uroot

export PATH=$PATH:/usr/local/mysql/bin/

#让该命令永久生效,将上面添加PATH的命令放到/etc/prefile文件里面,然后source  /etc/prefile,让配置立即生效

mysql -uroot -p123456    #-p输入密码 ,密码正确进入mysql

#密码最好加上单引号,因为如果密码含有特殊字符便识别不了

mysqladmin -uroot password '123456'

#设置mysql的root用户密码

mysqladmin -uroot -p '123456'  password '1234'            #更改root密码

密码重置(不知道密码)

1、编辑mysql配置文件

vi /etc/my.cnf

#增加一行内容  skip-grant

#skip-grant 表示忽略授权,即不用用户名密码可以直接登录

2、 重启mysql服务,让前面的配置生效

/etc/init.d/mysqld restart

3、登录mysql,更改mysql库的用户密码表,达到重新设置密码的目的

mysql -uroot               #登录mysql

use mysql;                   #切换到mysql库

update user set password=password('123456') where user='root';           #修改root密码为123456

4、编辑mysql配置文件,将增加的skip-grant删掉,然后重启mysqld服务

13.2 连接mysql

连接mysql的命令

mysql -uroot -p123456

#连接本机mysql

mysql -uroot -p123456 -h127.0.0.1 -P3306

#连接远程mysql,需要-h输入ip,还有-P指定端口

mysql -uroot -p123456 -S/tmp/mysql.sock

#通过-S指定socket文件进行链接(只适用于本机)

mysql -uroot -p123456 -e “show databases”

#-e选项,不进入mysql对数据库的内容进行操作(一般使用在shell脚本里面)

#不进入mysql将所有的数据库列出来

13.3 mysql常用命令

1、查询库show databases;

2、切换库      use mysql;

3、 查看库里的表     show tables;

4、查看表里的字段  desc tb_name;

5、 查看建表语句

show create table tb_name\G;

#\G的作用是使数据排列整齐

6、 查看当前用户select user();

#会将ip反解析成主机名,跟在用户名后面

7、查看当前使用的数据库  select databsase();

8、创建库    create database db1;

9、创建表

use db1;

create table t1(`id` int(4), `name` char(40));

10、查看查看创建表的语句

show create  tables  t1\G;

#mysql默认的字符集是latin1,可以修改,只需要在创建表的语句指定字符集,比如: create table t1(`id` int(4), `name` char(40)) ENGINE=InnoDB DEFAULT  CHARSET=utf8

#在不想执行的语句开头加上#号,语句便不执行

11、删除表     drop  table t1;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值