小编在安装 mysql 时不小心入坑,特发此贴!!
百度好久没有结果,重装虚拟机再试还是未果。。。。
废话不多说,进入正题。
首先要下载 mysql gz 的包 点这儿
进入该页面后,你可以下载最新版的 mysql 也可以下载历史版的(开心就好)
小编在找 glibc.gz 包的时候也找了好久,就是没有找到网上所说的那种,最后在这里发现了!看下图
下拉框中选择 Generic
这个就要根据 linux 版本来选择
这个 gz 就是网上说安装 mysql 的 gz 包
偷偷告诉你们一个小秘密,之前下载 oracle 的东西,小编都要登录 oracle 的账号,是不是很苦恼?不知道最近是 oracle 良心发现?还是小编一直没有注意,反正 mysql 是不需要登录就可以下载的!!
下面开始安装,
温馨提示:安装 mysql 需要 linux 中带 gcc 环境,所以没有 gcc 环境的小伙伴们,你们还要安装 gcc o(╥﹏╥)o
小编前面的安装都是和网上的大致一样,小编为了保证帖子可信,自己新搭建虚拟机重新安装。。。。
【首先解压 gz 包】
tar -zxvf
【移动】
将解压后的 mysql 文件全部移动到指定目录(不移动也无所谓)
mv mysql-5.7.23-linux-glibc2.12-x86_64/* /usr/local/mysql/
【添加 mysql 用户组、用户】
groupadd mysql
useradd -g mysql mysql
【修改目录所有者】
chown -R mysql:mysql /usr/local/mysql/
会看到下图
【安装 mysql 】
切换到 mysql 的 bin 目录(看到如下)
在这里执行安装操作
./mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
如果发现有如下警告,表示该命令已经被弃用了(在 mysql 5.7 之后)
【新的安装方式】
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
这里如果遇到以下错误
./mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
执行下面命令即可
yum install -y libaio
注意小编特意圈起来的地方,这是你登录 mysql 的密码(没有留意也没关系,还有备份!! cat /root/.mysql_secret )
由于初始密码很复杂所以也容易出错,何不跳过验证??
在[mysqld]的段中加上一句:skip-grant-tables 大功告成
但是,现在还不能启动 mysql,需要修改一下 /etc/my.cnf 文件
初始状态
修改后(小编为了保险起见,加了许多参数;也就是因为这些参数,小编才在安装 mysql 时入坑)
[mysqld]
datadir=/usr/local/mysql/data
basedir=/usr/local/mysql
socket=/usr/local/mysql/temp/mysql.sock
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
user=mysql
#skip-grant-tables
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
[client]
default-character-set=utf8
socket=/usr/local/mysql/temp/mysql.sock
[mysql]
default-character-set=utf8
socket=/usr/local/mysql/temp/mysql.sock
[mysqld_safe]
log-error=/usr/local/mysql/mariadb/mariadb.log
pid-file=/usr/local/mysql/mariadb/mariadb.pid
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
配置完成之后就可以启动了,有木有很激动呢!!
./mysql_safe --user=mysql &
如果有的小伙伴启动报错,请切换到 mysql 用户启动,再查看 my.cnf 文件中配置的路径是否都存在,如果不存在手动创建,所属必须是 mysql
此时 mysql 就已经安装成功,剩下的就是配置自启动和外部访问等操作了
小编在 my.cnf 中加入了跳过密码验证
这里小编就不多做描述!!
请注意 my.cnf 配置文件,小编就是在这里入坑的!!
以上是小编在 linux 系统中安装 mysql 的经验!
如有写错的地方还希望大神多多指教!