Linux下安装MySQL
- 获取安装包
- 环境配置
- 安装
获取安装包
1.从官网下载
官网访问地址:MySQL官网
2.使用wget命令获取
wget http://dev.MySQL.com/get/Downloads/MySQL-5.7/mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz
环境配置
1.检测系统是否自带MySQL
rpm -qa|grep -i mysql
如果有就进行卸载,使用rpm -ev package_name --nodeps 删除检查出来的包。没有的话跳过去安装就行了。
例如:
rpm -ev mysql-server-5.1.71-1.el6.x86_64 --nodeps
查找之前的MySQL目录,并使用 rm -rf 文件夹名 删除
find / -name mysql
删除my.cnf
rm -rf /etc/my.cnf
安装
1.解压重命名
解压
tar -zxvf mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz
重命名
mv mysql-5.7.37-linux-glibc2.12-x86_64 mysql
将MySQL移动到自己想要的位置
mv mysql /data/software/
2.创建MySQL用户和用户组
查看mysql用户和组是否存在,没有则创建
cat /etc/group|grep mysql
groupadd mysql
useradd -r -g mysql mysql
3.安装数据库
首先进入到mysql目录下
创建data目录
mkdir data
将mysql目录的所有者及所属组改为mysql,目录改为你自己的
chown -R mysql.mysql /data/software/mysql
在support-files目录下创建my_default.cnf
cd support-files/
touch my_default.cnf
编辑my_default.cnf文件,进行配置
这里只进行了简单的配置,目录记得改成自己的,详细的可以去百度
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=/data/software/mysql
# 设置 mysql数据库的数据的存放目录,MySQL 8+ 不需要以下配置,系统自己生成即可,否则有可能报错
datadir=/data/software/mysql/data
# 允许最大连接数
max_connections=20
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
#日志存放目录
log-error=/data/software/mysql/data/mysqld.log
pid-file=/data/software/mysql/data/mysqld.pid
拷贝到 /etc/my.cnf
cp my_default.cnf /etc/my.cnf
在mysql目录下:初始化MySQL
目录还是要换成自己的
./bin/mysqld --initialize --user=mysql --basedir=/data/software/mysql/ --datadir=/data/software/mysql/data/
这里可能会报错
如果报这个错误:执行下面命令
yum install libaio
再次执行初始化命令
查看日志(改成自己的目录),下面的红框是初始密码
cat /data/software/mysql/data/mysqld.log
把启动脚本放到开机目录下
cp ./support-files/mysql.server /etc/init.d/mysql
启动MySQL并测试
1.配置MySQL环境变量
vim /etc/profile
在文件最下面添加一行(目录改成自己的)
#mysql
export PATH=$PATH:/data/software/mysql/bin
刷新配置文件
source /etc/profile
2.启动MySQL
service mysql start
配置完环境变量以后,可以在任意位置进入mysql
mysql -u root -p
输入刚才日志文件的临时密码
修改密码,自己的密码
set password=password('root1234');
grant all privileges on *.* to root@'%' identified by 'root1234';
退出mysql
exit;
重启mysql生效
service mysql restart
开放防火墙端口3306
firewall-cmd --zone=public --add-port=3306/tcp --permanent
刷新
firewall-cmd --reload
远程连接测试