【安装步骤】
查看有没有安装包
[root@localhost ~]#yum list mysql*
安装mysql客户端
[root@localhost ~]#yum install mysql
安装mysql服务端
[blockquote2 name=’洛维花’]提示:如果输入此命令没有报错,则跳过下面步骤,继续安装下一个服务端[/tip]
[root@localhost ~]#yum install mysql-server
[blockquote2 name=’洛维花’]注意:此处错误提示为安装失败。
原因:CentOS7自带有MariaDB而不是MySQL,MariaDB和MySQL一样也是开元的数据库
解决方案:如果必须要安装MySQL,首先必须添加mysql社区repo通过输入命令:(权限不够,自行加入sudo)[/tip]
rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
执行完后,则继续执行:
[root@localhost ~]#yum install mysql-devel
到此mysql数据库安装完成了,接下来需要对数据库进行一些简单配置
简单配置
在/etc/my.cnf
文件中加入默认字符集
[root@localhost ~]#vim /etc/my.cnf ##添加元素 collation-server = utf8_general_ci init-connect='SET NAMES utf8' character-set-server = utf8
启动或关闭mysql服务
[root@localhost ~]#service mysqld start --启动mysql [root@localhost ~]#service mysqld stop --关闭mysql· [root@localhost ~]#lsof -i:3306 --数据库端口是否开启
设置开机启动mysql服务方式一
进入系统目录:
cd /usr/lib/systemd/system/
编写mysqld.service
:
vim mysql.service
内容如下:
[Unit] Description=MySQL Community Server After=network.target After=syslog.target [Install] WantedBy=multi-user.target Alias=mysql.service [Service] User=mysql Group=mysql # Execute pre and post scripts as root PermissionsStartOnly=true # Needed to create system tables etc. ExecStartPre=/usr/bin/mysql-systemd-start pre # Start main service ExecStart=/usr/bin/mysqld_safe --basedir=/usr # Don't signal startup success before a ping works ExecStartPost=/usr/bin/mysql-systemd-start post # Give up if ping don't get an answer TimeoutSec=600 Restart=always PrivateTmp=false
[blockquote2 name=’洛维花’]各大路劲需要指定到Mysql
的实际安装目录[/tip]
执行命令:
systemctl daemon-reload # 开启自启 systemctl enable mysqld.service # 启动、重启、停止 systemctl start|reload|stop mysql
设置开机启动mysql服务方式二
[root@localhost ~]# chkconfig --add mysqld
设置开机启动报错内容
开机启动报错内容
[root@localhost ~]# chkconfig --add mysqld 服务 mysqld 信息读取出错:没有那个文件或目录
解决设置开机启动报错
- 查找Mysql 安装目录
###默认安装路径 mysql_config --variable=pkglibdir ###MySQL的数据目录路径 mysql_config --variable=datadir ###默认配置文件路径 mysql_config --variable=confdir ###查看Mysql状态 systemctl status mysql
找到图片上的mysqld.server
服务文件复制到/etc/rc.d/init.d
下
cp /usr/lib/systemd/system/mysqld.service /etc/rc.d/init.d/mysqld chmod +x /etc/rc.d/init.d/mysqld
然后执行
chkconfig --add mysqld
时提示“服务 mysql
不支持 chkconfig
,解决办法
要让chkconfig支持,就得在/etc/rc.d/init.d/mysqld
脚本中添加 两行注释:
# chkconfig: 234 19 08 # description: xxxxxxxxxxxxxxxxx
##设置权限 chmod +x /etc/init.d/mysqld ##添加开机启动 chkconfig --add mysqld
创建root管理员
mysqladmin -u root password 密码
进入mysql容器中
mysql -u root -p
设置允许远程访问
开放防火墙的端口号
mysql
增加权限:mysql
库中的user
表新增一条记录host
为“%”
,user
为“root”
。
use mysql; UPDATE user SET `Host` = '%' WHERE `User` = 'root' LIMIT 1; ##%表示允许所有的ip访问 select host from user;
开放防火墙端口,允许外部访问
版本的问题,两种方式
方式一
systemctl status iptables.service ####如果报错,则看方式二 Unit iptables.service could not be found
vi /etc/sysconfig/iptables 加入:-A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT 这段配置,然后进行保存
systemctl restart iptables.service -- 重启防火墙 systemctl status iptables.service -- 查看状态 service iptables save -- 保存规则 systemctl enable iptables.service -- 设置开机启动 systemctl start iptables.service -- 开启服务
方式二
- 查看防火墙状态
systemctl status firewalld.service
- 开放端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent ##重启防火墙 systemctl restart firewalld.service
[blockquote2 name=’洛维花’]注意:如果用的是阿里云服务器,需要配置安全组规则,否则无法访问[/tip]
测试远程访问
我用的是navicat客户端进行连接,如果弹出该提示框,则表示连接成功!
到此结束!