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次课的主要内容,如果未能解决你的问题,请参考以下文章