1.MySQL的重新安装部署
(1)rm -rf arch/* ,rm -rf data/*。
(2)script....,在笔记中找到MySQL部署这行代码,重这里开始往下面做下去。
2.desc user:查看user表有哪些字段
mysql:进入mysql命令模式。
show databases:显示当前有多少个数据库。
use mysql:进入mysql数据库。
show tables:显示mysql数据库中有多少个表,有多少行。
desc user:查看user表里有多少个字段,类型等。
3.增加,删除,查询,更改
首先你得知道里面有什么东西可以给你操作,执行上面那步。
(1)查询
select Host,user,password from user:在表user中查训Host(主机名),user(用户),password(密码)
select Host,user,password from mysql.user:上面的意思一样,区别就是这条语句的执行不需要进入mysql数据库之下。
(2)更改
update user set password=password('123456') where user=('root'):将user表中的root用户的密码更新为123456。
执行之后呢,发现还是一键就进去了,密码没用,那是因为权限的更新,需要刷新一下
flush privileges:刷新权限
(3)删除
delete from user where user=‘’:删除user表中user等于空的
空用户那个就没了,在刷新一下,flush privileges;
下面Host四句话都是表示本机器。
4.数据库管理软件dbeaver
(1)进行连接的时候呢,报下面这个错误,这个错误的原因是由于dbeaver新版本废弃了convertToNull该写法,改为 CONVERT_TO_NULL写法,但是我的dbeaverl版本是3.x系列的,版本太旧,所以会出现这种情况。
这个时候呢,咋们去官网下载版本较高的dbeaver,就可以了。
(2)在进行连接的时候呢,又报了第二个错误
这个图呢是我在视频上截的,我的那个和这个一样,但是我忘了截屏。
这个错误就是说你的机器本身不让你连接,你得去mysql修改一下,下面那句是刷新一下设置。
(3)在进行连接的时候呢又报了第三个错误
The server time zone value 'PDT' is unrecognized or represents more than one time zone. You must configure eit....
这个是时区的错误,mysql环境的时区和你dbeaver的时区不一样导致的,我们执行下面这三步手动修改时区就好了。
show variables like 'time_zone';
set global time_zone='+8:00';
flush privileges;
最后总算是完成链接了,你可以用过它的很快的查看你的数据变化,也可以远程连接进行操作。
5.mysql命令参数
mysql -uroot -p:-u表示用户,-p表示密码
mysql -uroot -p123456:表示root用户密码123456直接登录,不用再输如了,但是这个就暴露你的密码了,所以他一般用写shell脚本。
mysql -uroot -p123456 -hlocalhost(或者ip)mysql:
表示root用户,密码123456。-hlocalhost表示本机器,mysql表示直接用mysql数据可。
最后一定要学会查看命令帮助。
6.创建新DB和用户
create database ruozedb:表示创建ruozedb数据库。
grant all privileges on ruozedb.* to ruoze@'192.168.1.106' identified by '123456':
表示对ruozedb的文件授予所有权限,对ruoze用户ip为192.168.1.106(就是自己机器windows可以连接他) ,密码为123456。
按道理来说自己电脑连接他是没问题的,但是上面报了个权限错误,这是因为我们的Linux系统是在虚拟机上装的,
也就是VM10,这是传过去的ip就是VM10的,而不是windows自己的,所以只需要将ip修改一下就好了。
grant all privileges on ruozedb.* to ruoze@'192.168.137.1' identified by '123456':再去链接就可以了。
还是有问题的直接把ip改成%
注意:flush privileges 刷新一下
7.查看当前mysql连接数
show processlist:
主要看用户,机器,数据库名和运行时间,若有运行时间过长,卡死的。确认没有影响后,kill ID:杀死它就可以了
8.字符段类型
(1)主要的几个类型
CHAR(M) | M | M为0~255之间的整数 |
VARCHAR(M) | M为0~65536之间的整数 |
CHAR(定长字符)和VARCHAR(变长字符)很类似,都是用来保存Mysql中较短的字符串,主要区别在于:
CHAR列的长度固定为创建表时声明的长度,长度可以为从0~255的任何值,而VARCHAR的值可以是变长字符串,长度可以指定0~65535之间的值,在检索的时候,CHAR列会删除尾部的空格而VARCHAR则保留了这些空格。
int 4字节 用于较大整数值 ,一般在小公司中用的较多。
bigint 8字节 用于极大整数值 ,一般用大公司。
(2)sql语句主要划分的三个类别
DDL(data definition languages)语句:数据定义语言,定义数据库,数据段,表,列,索引等,create、drop、alter等。一般多数被DBA使用,开发人员很少使用。
DML(data manipulation language)语句:数据操纵语句,insert、delete、update、select。(增删改查)等。只是对内部数据的操作,而不涉及到表的定义,结构的修改,更不会涉及到其他对象。
DCL(data control language)语句:数据控制语句,定义数据库,表,用户的访问权限和安全级别等。主要的关键字包括grant,revoke等。