MySQL常用操作

13.1 设置更改root密码

进入MySQL的命令:

#/usr/local/mysql/bin/mysql -uroot

首次进入是不用密码的,退出输入quit或者exit即可。

我们把MySQL的路径加入环境变量中:

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

然后设置为开机加载:

#echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile

然后刷新一下:#source /etc/profile,再进入MySQL:

9dfc4e99e5e0fc677372779b757607490cb.jpg

-u用来指定要登录的用户,后面可加可不加空格。root用户是MySQL自带的管理员账户,默认是没有密码的,那么如何给root设定密码呢?

87b019998aca55c405a90d6f4b308e217b6.jpg

mysqladmin -uroot password '123456',这样即给root用户设定了密码123456。此时再登录MySQL的话,就会报错,要求重新输入密码登录:

642e971de43bf510e0a81361138cd316e5e.jpg

那么,如果在不知道root密码,或者忘记root密码的情况下,怎么去登录MySQL呢?

我们首先编辑配置文件/etc/my.cnf,在[mysqld]里面添加skip-grant(意思是忽略授权),然后重启mysql服务:/etc/init.d/mysqld restart,此时再去登录MySQL就不需要密码了。

70ae339c52515d2c4917f76022eae842860.jpg

然后选择mysql表:

b7e860d35c0e56c37b2ddaf29b5a9c4858b.jpg

查看root用户的密码(是加密的):

1417d6d9ca07bb89ca167feba60b571921d.jpg

更改root用户密码为123456:

fb54b9802f2586ddcd1e41cc9aaac04eafb.jpg

再把配置文件/etc/my.cnf里的[mysqld]下的skip-grant删除掉,保存后重启mysql服务。再登录MySQL,就会要求输入密码,此时输入刚才更改的密码登录即可。


13.2 连接mysql

mysql -uroot -p123456

mysql -uroot -p123456 -h127.0.0.1 -P3306用于连接网络中某一主机上的MySQL

mysql -uroot -p123456 -S/tmp/mysql.sock适合本机登录使用。

mysql -uroot -p123456 -e "show databases"一般用在shell脚本中。


13.3 mysql常用命令

1、查询当前库:show databases;

d811451cdfd6f883379ba06337ac08f3097.jpg

2、查询某个库的表:切换表use mysql;列出表show tables;

657e4a61db3cca81218e89274c71a6b4904.jpg

e67925cbd41a591ce2e12a4169cd8bb3cba.jpg

3、查看某个表的全部字段:desc db;如果想显示的信息更详细,可以在后面加上\G

e4faa6e81d4e70b9964569cfca22a6bcb7e.jpg4e5ba4a937bef232559596102c741dc1662.jpg

4、查看当前是哪个用户:select user();

cd33fba081b3d6dc3fb231df54555b830d5.jpg

5、查看当前所使用的数据库:select database();

224bdce6770f10ea9b2764eee58cf02fc3a.jpg

6、创建一个新库:create database db1;

f5104b2f8c88fadf71a7edff41c2da99348.jpg

7、创建一个新表:切换到表db1 use db1;create table t1 (`id` int(4), `name` char(40));

3e8f20d89939984e63e820446b495d07031.jpg

8、查看当前数据库的版本:select version();

1fc4ee9210c2bf9bd96cd024ba4f02640df.jpg

9、查看MySQL的当前状态:show status;

cb39ce6fb51d4abce14d0cf42bca5fa9f33.jpg

10、查看MySQL的参数:show variables;

11、修改MySQL的参数(举例来说,修改参数max_connect_errors):show variables like 'max_connect%'; set global max_connect_errors = 1000; show variables like 'max_connect_errors';

ed16c508bd3aef2b8e0cbef4d4ae88a0cc1.jpg

12、查看当前MySQL服务器的队列:show processlist;

1f736a5aff6078aa9ce8931046f77f32c9d.jpg

 


13.4 mysql用户管理

grant all on *.* to user1 identified by '123456';

f02338dfe7cc9611b264c48ae3aceb0e82f.jpg

其中,all表示所有的权限(读、写、查询、删除等);.有两个*,第1个*表示所有的数据库,后者表示所有的表;identified by 后面跟密码,用单引号括起来。这里的user1特指localhost上的user1。

如果是给网络其他机器上的某个用户授权,则要执行如下命令:

grant all on db1.* to 'user2'@'192.168.6.120' identified by '123123';

0681fe3806ef56f92d7988783b3b87490da.jpg

其中,用户和主机的IP之间有一个符号@。另外,命令中主机IP可以用%替代,表示所有主机,如下所示:

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

c5996e5af9af4909100e72e284d48243007.jpg


13.5 常用sql语句

1、查询语句:

(1)、select count(*) from mysql.user;

838f6a4a1923315d14f4b0f0a4311c391de.jpg

mysql.user表示MySQL库的user表,count(*)表示表中共有多少行。

(2)、select * from mysql.db;

表示查询MySQL库的db表中的所有数据。也可以查询单个字段或者多个字段:

select db from mysql.db;

select db,user from mysql.db;

也可以使用万能匹配符%:

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

2、插入一行

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

5574a0a9a004abc3dcd7506f9d0fc3626d9.jpg

3、更改表的某一行

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

15a10075557866c68024531e3c8bf2f3424.jpg

4、清空某个表的数据

truncate table db1.t1;

b32f3a1ee0d73ebf56fbf439e52425321a5.jpg

5、删除表

drop table db1.t1;

5273dedb304c12b1e2cf68d56628ae529d8.jpg

6、删除数据库

drop database db1;

c7409bc66f984ce9b060d01b3078e2f2961.jpg


13.6 mysql数据库备份恢复

1、MySQL备份

备份库:mysqldump -uroot -p'123456' mysql > /tmp/mysql.sql

备份表:mysqldump -uroot -p'123456' mysql user > /tmp/user.sql

备份所有库:mysqldump -uroot -p -A > /tmp/123.sql

只备份表结构:mysqldump -uroot -p'123456' -d mysql > /tmp/mysql.sql

2、MySQL恢复

恢复库:mysql -uroot -p '123456' mysql < /tmp/mysql.sql

恢复表:mysql -uroot -p'123456' mysql < /tmp/user.sql

转载于:https://my.oschina.net/u/3992198/blog/2991305

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值