关于Linux上安装Mysql可以查看之前的博客:https://blog.csdn.net/qq_43842093/article/details/120401076
Linux启动Mysql
下查看mysql服务的两种方式:
方式一:
[root@localhost bin]ps -ef|grep mysql
方式二:
[root@localhost bin]netstat -nlp
二、linux下启动mysql服务的两种方式:
命令行方式:
[root@localhost bin]cd /usr/bin
[root@localhost bin]./mysqld_safe &1
服务方式:
[root@localhost ~]service mysql start
(已被systemctl start mysql.service替代)
如果服务在启动状态,直接重启服务用以下命令:
[root@localhost ~]service mysql restart
三、linux下关闭mysql服务的两种方式:
命令行方式:
[root@localhost ~]mysqladmin -u root shutdown
服务方式:
[root@localhost ~]service mysql stop
查看防火墙,开启端口
查看firewall服务状态
systemctl status firewalld
开启、重启、关闭、firewalld.service服务
开启
service firewalld start
重启
service firewalld restart
关闭
service firewalld stop
查看防火墙规则
firewall-cmd --list-all # 查看全部信息
firewall-cmd --list-ports # 只看端口信息
开启端口
开端口命令:firewall-cmd --zone=public --add-port=80/tcp --permanent
重启防火墙:systemctl restart firewalld.service
命令含义:
--zone #作用域
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
看到3306端口已经开启了
遇到的错误:
在用Navicat配置远程连接Mysql数据库时遇到如下报错信息,这是由于Mysql配置了不支持远程连接引起的。
1.在安装Mysql数据库的主机上登录root用户:
mysql -u root -p
2.依次执行如下命令:
use mysql;select host from user where user='root';
可以看到当前主机配置信息为localhost.
3.将Host设置为通配符%
Host列指定了允许用户登录所使用的IP,比如user=root Host=192.168.1.1。这里的意思就是说root用户只能通过192.168.1.1的客户端去访问。 user=root Host=localhost,表示只能通过本机客户端去访问。而%是个通配符,如果Host=192.168.1.%,那么就表示只要是IP地址前缀为“192.168.1.”的客户端都可以连接。如果Host=%,表示所有IP都有连接权限。
注意:在生产环境下不能为了省事将host设置为%,这样做会存在安全问题,具体的设置可以根据生产环境的IP进行设置;
update user set host = '%' where user ='root';
Host设置了“%”后便可以允许远程访问。
4.Host修改完成后记得执行flush privileges使配置立即生效
flush privileges;
5.使用navicat 连接至mysql
再次尝试,可以远程连接了。
也可以在1步骤之后直接执行下边的命令,也可以解决问题。
设置远程访问权限并修改密码:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456'
再次尝试,可以远程连接了。