今天在工作中需要为虚拟机安装mysql,遇到总总问题---安装包缺失、指令不存在,查阅了很多博客与资料大多数大同小异,看的也不是很清晰,所以写一篇整理性的博客,为contentOS7使用tar包安装mysql进行一些记录
首先:因为现在很多镜像文件都自带mysql数据库,大多数都不需要再进行额外安装,但也有人觉得默认安装的数据库版本过低,所以安装第一步应该检测当前虚拟机中是否已经安装了mysql
查看是否装有mysql命令:
rpm -qa|grep mysql |
将已安装的mysql卸载命令(没有则跳过):
rpm -e --nodeps 程序名 |
注意:如果是centos7,那么默认会安装一个mysql的分支产品mariadb,必须先卸载此分支产品
rpm -qa | grep mariadb |
将已安装的mariadb卸载命令(没有则跳过):
rpm -e --nodeps 程序名 |
创建/user/database并将已下载tar包上传(也可以使用yum指令由网络下载)
cd /usr/ mkdir database cd database wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.22-el7-x86_64.tar.gz |
安装mysql之前需要确保系统中有libaio依赖
yum search libaio yum install libaio |
解压tar包准备开始安装
tar -zxvf mysql-5.7.22-el7-x86_64.tar.gz mv mysql-5.7.22-el7-x86_64 mysql5.7 #重命名为mysql5.7 |
安装mysql
1、添加用户和组
#添加用户组 groupadd mysql #添加用户mysql 到用户组mysql(使用-r参数表示mysql用户是一个系统用户,不能登录) useradd -r -g mysql mysql #添加完用下面命令测试,能看到mysql用户的信息 id mysql |
2、手动创建MySQL data目录
cd /usr/database/mysql5.7/ mkdir data |
3、权限设置
#将mysql及其下所有的目录所有者和组均设为mysql chown -R mysql:mysql /usr/database/mysql5.7/ #查看是否设置成功,执行下面命令,可以看到文件的所有者和组都变成了mysql cd /usr/database/ ll |
4、配置my.cnf文件
注意:一定要在数据库初始化之前加入 /etc 目录下,如果已存在可以删除后重新添加也可以直接进行修改
rm -rf /etc/my.cnf
|
5、初始化mysql
/usr/database/mysql5.7/bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/database/mysql5.7 --datadir=/usr/database/mysql5.7/data
|
6、启动mysql
/usr/database/mysql5.7/bin/mysqld_safe --user=mysql & |
7、修改密码
#进入mysqlbin文件夹 cd /usr/database/mysql5.7/bin/ ./mysql -u root -p # 默认没有密码,直接敲回车就可以 #切换使用数据库 use mysql; #修改root用户密码 update user set authentication_string=password('密码') where user='root'; #刷新 flush privileges; exit; |
8、登录测试
cd /usr/database/mysql5.7/bin/ ./mysql mysql -u root -p #输入密码后,应该就连接上了 show databases; exit; #退出 |
9、复制mysql启动脚本并将其添加到服务且设置为开机启动
#mysql启动脚本为:/usr/database/mysql5.7/support-files/mysql.server #添加服务 # 显示服务列表 # 开机启动 # 测试添加的服务是否能用 |
其他
设置外网访问
在mysql的bin目录下执行:mysql -uroot -p密码 登陆到数据: 调整方法: |
linux登录
#进入mysql安装目录的bin目录,然后输入以下命令 ./mysql -u root -p #然后输入密码就登录成功 exit;#退出mysql |