环境如下:
操作系统:ContOS 7
mysql版本:mysql-5.6.44-linux-glibc2.12-x86_64.tar.gz
安装步骤:
-
卸载系统自带的MySQL
查询并删除mysql有关文件
查询命令:find / -name mysql
删除MySQL相关文件
删除命令:rm -rf [路径] ——如果有多个路径使用空格隔开,如下图所示
使用Xshell中文件上传功能(安装Xftp)上传mysql压缩包(压缩包自行准备) -
在MySQL安装包存放目录下执行命令解压文件
解压命令:tar -zxvf mysql-5.6.44-linux-glibc2.12-x86_64.tar.gz -
解压完成之后删除MySQL压缩包
删除命令:rm -f mysql-5.6.44-linux-glibc2.12-x86_64.tar.gz
-
先检查是否有mysql用户组和mysql用户
查询命令:groups mysql
-
如果没有则创建
创建用户组命令:groupadd mysql ; useradd -r -g mysql mysql
-
进入到MySQL目录更改权限
命令:chown -R mysql:mysql ./ -
执行安装脚本
命令:./scripts/mysql_install_db --user=mysql
如果出现以上请况请执行以下命令
yum -y install perl perl-devel
继续执行安装脚本命令
如果出现以上情况请执行以下命令
yum install -y perl-Data-Dumper
以上命令执行完成之后则继续执行安装脚本命令
安装完成后的输出信息还要仔细看一下 -
安装完之后修改当前目录拥有者为root用户,修改data目录拥有者为mysql
chown -R root:root ./
chown -R mysql:mysql data
-
更改mysql密码
第7步安装脚本执行输出的日志中告诉我们如何更改密码了:先启动服务,然后执行命令
9.1.启动mysql
命令: ./support-files/mysql.server start
如果出现以上情况,进入/var/log目录创建mariadb目录,进入mariadb创建mariadb.log文件
创建目录命令:mkdir mariadb
创建文件命令: touch mariadb.log
编辑MySQL安装目录下的my.cng配置;
进入文件命令:vi my.cnf 然后使用 i 命令进入编辑状态;
修改默认配置完成之后按Esc按键 输入 :wq 命令保存并退出编辑状态;
进入MySQL安装目录下的support-files目录下,并编辑mysql.server文件
进入文件命令:vi mysql.server 然后使用 i 命令进入编辑状态;
修改默认配置完成之后按Esc按键 输入 :wq 命令保存并退出编辑状态;
最后重新启动MySQL
进入MySQL安装目录下的support-files目录下
命令:./mysql.server start
-
MySQL启动之后再执行如下命令更改密码(注意当前目录):
命令:./bin/mysqladmin -u root -h localhost.localdomain password ‘root’
-
登录MySQL:
命令:./bin/mysql -uroot
如果出现以上错误则需要编辑 mysql目录下my.cnf文件
添加以下配置
socket = /var/lib/mysql/mysql.sock
[client]
default-character-set=utf8
[mysqld]
character-set-server=utf8
collation-server = utf8_general_ci
lower_case_table_names=1
max_allowed_packet=100M
然后执行以下命令
mkdir -p /tmp/mysql
chmod 777 /tmp/mysql
systemctl start mysql.service
要启动MySQL数据库是却是这样的提示:
Failed to start mysqld.service: Unit not found
解决方法如下:
首先需要安装mariadb-server
yum install -y mariadb-server
执行启动服务命令
systemctl start mariadb.service
添加到开机启动命令
systemctl enable mariadb.service
- 在虚拟集中测试链接
- 开放端口号
#查看防火墙状态
systemctl status firewalld.service
#查看防火墙状态
firewall-cmd --state
#显示防火墙规则
firewall-cmd --list-all
#开启端口 #(--permanent永久生效,没有此参数重启后失效)
firewall-cmd --zone=public --add-port=38888/tcp --permanent
#载入修改的规则
firewall-cmd --reload
#移除端口
firewall-cmd --remove-port=8082/tcp --permanent
- 设置开机自起MySQL服务
创建systemctl管理mysql的配置文件命令:
touch /usr/lib/systemd/system/mysql.service
编辑该配置文件命令
vi /usr/lib/systemd/system/mysql.service
以下内容添加到配置文件中
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000
#Restart=on-failure
#RestartPreventExitStatus=1
#PrivateTmp=false
启动MySQL服务命令:
systemctl start mysql
查看MySQL服务状态:
ps -ef | grep mysql
通过systemctl 来设置mysql开机启动命令:
systemctl enable mysql