2018.3.22 13周4次课

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2018.3.22 13周4次课相关的知识,希望对你有一定的参考价值。

十三周四次课(3月22日)

13.1 设置更改root密码

13.2 连接mysql

13.3 mysql常用命令

13.1 设置更改root密码

root用户的mysql的超级管理员用户,跟linux的root用户类似。但需要区分,这个root用户和系统的root用户不是一个用户,需要注意。也可以创建一个普通用户来连接mysql

首次进入mysql数据库是不用密码的。默认mysql数据库的root用户密码为空,连接时不需要密码

  • 设置密码:

启动mysql:service mysqld start

技术分享图片

usr/local/mysql/bin/mysql -uroot

更改环境变量PATH,增加mysql绝对路径

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

mysql –uroot

技术分享图片

让变量永久生效,要把export PATH=$PATH:/usr/local/mysql/bin/ 放入/etc/profile文件里最后一行

技术分享图片

使环境变量生效需要运行命令:source /etc/profile

进入mysql数据库:mysql -uroot –p //因为密码为空,所以输入密码时直接回车

技术分享图片

设置密码:mysqladmin -uroot password '密码'

mysqladmin -uroot password '123456' //密码可以不用单引号

技术分享图片

用新设置的密码登陆:mysql -uroot –p'123456'

技术分享图片

  • 更改密码:mysqladmin -uroot -p'旧密码' password '新密码'

mysqladmin -uroot -p'123456' password 'aminglinux.2'

登陆:mysql -uroot -p'aminglinux.2'

技术分享图片

  • 密码重置

编辑vim /etc/my.cnf //在【mysqld】这部分增加skip-grant

技术分享图片

修改配置文件后需要重启服务:service mysqld restart

技术分享图片

现在进入就不要密码了:mysql -uroot

技术分享图片

在mysql库里的user表里更改密码

use mysql; //切换到mysql库

技术分享图片

select * from user\G; //查找user表,G:表示竖排显示

技术分享图片

select password from user; //password是加密的字符串,也可以写成select password from user where user='root';

技术分享图片

update user set password=password('aminglinux') where user='root'; //第一个password是密码字段,第二个password是生成加密密码的函数

技术分享图片

退出改回/etc/my.cnf文件,删除skip-grant这一行

重启服务:service mysqld restart

技术分享图片

再次登陆:mysql -uroot –paminglinux

技术分享图片

13.2 连接mysql

mysql -uroot -pamingliunx //连接本机,默认连接方式是sock

mysql -uroot -pamingliunx -h127.0.0.1 -P3306 //连接远程,-h:指定远程主机的ip;-P:指定远程主机mysql的绑定端口,默认都是3306

技术分享图片

mysql -uroot -paminglinux -S/tmp/mysql.sock //用sock方式连接,适合连接本机,用-S来指定sock。和第一种连接方式一样

mysql -uroot -paminglinux -e "show databases" //-e是连接上数据库后的操作命令,使用在shell脚本里比较多

技术分享图片

13.3 mysql常用命令

  • 查询库 show databases;

技术分享图片

  • 切换库 use mysql;

技术分享图片

  • 查看库里的表 show tables; //库由表组成的

技术分享图片

  • 查看表里的字段 desc tb_name; //表由字段组成的

desc user; //查看user表的字段

技术分享图片

  • 查看建表语句 show create table tb_name\G;

show create table user\G; //查看user表是怎么创建的

技术分享图片

  • 查看当前用户 select user(); //显示的是localhost

技术分享图片

换一种方法:指定ip和端口

mysql -uroot -paminglinux -h127.0.0.1 //显示的是localhost,因为127.0.0.1是本机

技术分享图片

mysql -uroot -paminglinux -h192.168.37.101 -P3306 //显示的是主机名,这个是反解析。通过192.168.7.101反解析到aming-02的主机

技术分享图片

  • 查看当前使用的数据库 select database();

技术分享图片

数据库为空

use mysql //切换到mysql数据库查看

技术分享图片

数据库是mysql

  • mysql也有命令历史的记录功能,文件在root用户根目录下 /. mysql_history

技术分享图片

cat .mysql_history

技术分享图片

  • 创建库 create database db1;

技术分享图片

show databases; //可以看到多了个db1

技术分享图片

  • 创建表 use db1; create table t1(`id` int(4), `name` char(40)); //t1:表名;id:字段名;int:数据类型是数字型;4:数据长度是4;name:字段名;char:数据类型是字符型;40:数据长度是40

技术分享图片

show create table t1\G;

技术分享图片

ENGINE=InnoDB //数据引擎是InnoDB

DEFAULT CHARSET=latin1 //默认字符集是拉丁1

drop table t1; //删除t1表

技术分享图片

use db1; create table t1(`id` int(4), `name` char(40)) ENGINE=InnoDB DEFAULT CHARSET=utf8; //创建默认字符集是utf8的表t1

技术分享图片

show create table t1\G;

技术分享图片

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

技术分享图片

  • 查看数据库状态 show status;

技术分享图片

  • 查看各参数 show variables; show variables like 'max_connect%';

show variables; //查看全部参数

技术分享图片

show variables like 'max_connect%'; //查看指定的参数,%:通配符,类似shell下的*。

技术分享图片

修改参数 set global max_connect_errors=1000; //在内存中生效,重启就失效了。想永久生效就要退出mysql,在/etc/my.cnf配置中修改

技术分享图片

查看队列 show processlist; show full processlist;

show processlist;

技术分享图片

show full processlist; //查看完整的信息

技术分享图片


以上是关于2018.3.22 13周4次课的主要内容,如果未能解决你的问题,请参考以下文章

2018.4.13 16周3次课

2018.4.19 17周2次课

2018.3.22 一周四次课

2018.3.22 一周四次课

2017.12.13 1周3次课

2018.4.16 16周4次课