Linux中mysql相关命令和设置

1、以前都用service命令管理mysql,现在liunx系统升级了,又有了新的更好的方法管理系统进程,现在我们来学习如何用systemctl命令管理mysql。Systemctl是一个systemd工具,主要负责控制systemd系统和服务管理器。 Systemd是一个系统管理守护进程、工具和库的集合,用于取代System V初始进程。Systemd的功能是用于集中管理和配置类UNIX系统。 在Linux生态系统中,Systemd被部署到了大多数的标准Linux发行版中,只有为数不多的几个发行版尚未部署。Systemd通常是所有其它守护进程的父进程,但并非总是如此。

启动mysql服务
systemctl start mysqld.service

停止mysql服务
systemctl stop mysqld.service

重启mysql服务
systemctl restart mysqld.service

查看mysql服务当前状态
systemctl status mysqld.service

设置mysql服务开机自启动
systemctl enable mysqld.service

停止mysql服务开机自启动
systemctl disable mysqld.service

之后可以通过新的命令来管理mysql。

2、设置mysql开机自启动
通过ntsysv命令查看mysql服务有没有启动,如果中括号中带有*号则表示开机自启动。


Linux中mysql相关命令和设置_第1张图片
image.png

3、设置数据库编码格式

注意:5.7.20版本之后,默认不带my.cnf配置文件,无需该文件也能启动

我们先看看数据库现在的默认编码格式,命令

show variables like 'character%'
show variables like '%char%'

Linux中mysql相关命令和设置_第2张图片
默认编码.png

如果使用默认的编码格式会出现什么样的情况。你插入的数据是中文就会报错。


image.png
image.png

怎么解决呢?在/usr/my.cnf文件中在[mysqld]下面加入

character-set-server=utf8

然后重启服务就可以了

systemctl restart mysql

重启完毕之后如下图
Linux中mysql相关命令和设置_第3张图片
image.png

4、查看数据库引擎

show engines 查看引擎
show variables like '%storage_engine%'

如图所示,默认采用的是InnoDB


Linux中mysql相关命令和设置_第4张图片
image.png

5、授权远程登录
为了方面查看linux上面的数据库,可以通过navicat查看,但是需要进行授权远程登录,需要修改防火墙配置文件 vim /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

如果不修改则将会遇到类似下面的错误: 在客户机上使用 Navicat for MySQL 远程连接就报10060的错
Linux中mysql相关命令和设置_第5张图片
image.png

除了修改防火墙之外还需要进行授权,授权命令如下:

mysql>GRANT ALL PRIVILEGES ON . TO 'root'@'%' IDENTIFIED BY '自己的密码' WITH GRANT OPTION;
mysql>FLUSH PRIVILEGES

如果不进行授权则会出现以下错误:


Linux中mysql相关命令和设置_第6张图片
image.png

OK~,到此介绍完了,关于mysql的相关知识还有很多,在之后遇到就会慢慢加上去,如果有小伙伴知道,可以留言,我可以补充上去,大家一起学习。

你可能感兴趣的:(Linux中mysql相关命令和设置)