CentOS MySQL-5.7.22 以tar.gz方式安装(version.2.0)

时间:2023-01-26 21:04:19

CentOS 6 MySQL-5.17 tar.gz安装

– 不需要编译
– 不要自动化安装
– 注意:5.7.20版本之后,默认不带my.cnf配置文件,无需该文件也能启动
– 安全方面考虑,看是给root自己用,还是分配用户用;如果是root自己用,直接用root这个用户,不必额外新建mysql用户
– 自定义安装位置,没有沿用默认的安装目录、data放置目录。就是没用yum安装。

预备:

root用户权限
CentOS 6(7也可以)
tar.gz 安装包

Download & Install

// 官网下载地址,根据系统选择
https://downloads.mysql.com/archives/community/

// 选择版本下载: centos6,mysql-5.7.17
wget http://ftp.jaist.ac.jp/pub/mysql/Downloads/MySQL-5.7/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

// MD5 验证(可选,可以跳过)
md5sum mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

// 解压到指定位置
tar -zxf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz  -C /usr/local

// 进入解压目录,使用软连接
cd /usr/local/mysql
ln -s mysql-5.7.17-linux-glibc2.5-x86_64/ mysql

// (根据需求,可以跳过)添加用户、用户组. 
// 注:如果仅仅是个人使用什么的,可以不用创建mysql用户。刚开始不懂,照着网上教程做,真是麻烦
groupadd -r mysql && useradd -r -g mysql -s /sbin/nologin -M mysql
> 注:-s:指定用户登入后所使用的shell。默认值为/bin/bash。
> -M:不要自动建立用户的登入目录。

// 检测mysql 用户,如果是root用户,可以跳过。
id mysql

// 新建data 目录,如果是创建了mysql用户,要将权限给mysql,也就是下一步的步骤
// 官网有新建 mysqlfiles目录的,这里就算了
mkdir data
// 修改文件权限给mysql
chown -R mysql:mysql /usr/local/mysql

// 初始化安装
// --initialize-insecure 选项是没有随机密码;
mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

// (可选)如果想要默认的随机密码方式,使用 --initialize 参数,并且记住该随机密码,后面登录要用
mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

// 配置文件(个人不喜欢放配置文件在默认位置)
// 直接在mysql的主目录下创建配置文件,启动时候指明即可

vim $MYSQL_HOME/my.cnf
[client] socket=/tmp/mysql.sock port=3306 # 注意: 方括号里面名称一定要留心:是mysqld,还是mysqld_safe是有区别的。 # 二者中看你用哪个命令启动mysql服务,不过建议mysqld_safe,那么后面启动命令也就用mysqld_safe [mysqld_safe] socket=/tmp/mysql.sock basedir=/home/software/mysql datadir=/home/software/mysql/data character_set_server=utf-8 err-log=/home/software/mysql/logs // 开始启动mysql服务,指明配置文件,如果创建了mysql用户,user=mysql bin/mysqld_safe --defaults-file=$MYSQL_HOME/my.cnf --user=root --port=3306 & // 环境变量配置到全局环境变量中,个人推荐“环境写入”这一步骤,最后进行。 echo -e '\n\nexport PATH=/usr/local/mysql/bin:$PATH\n' >> /etc/profile && source /etc/profile (此处删去添加mysql到启动服务步骤,如果个人有需求,请另外搜索。这个也不难。) // 默认帐号登录 mysql -uroot -p //初次使用要修改临时密码 mysql> set password=password('A123456'); mysql授权: mysql> grant all privileges on *.* to root@'%' identified by 'A123456'; 更新权限: mysql> flush privileges;

附:

MAC OS X install mysql-v-5.7
https://www.widlabs.com/article/mac-os-x-install-mysql-57-with-tar-gz

参考:
// 该文中不明白为什么要用 ssl
http://www.centoscn.com/mysql/2016/1113/8151.html

// 该文中不懂为什么还要预编译
https://luohoufu.github.io/2016/07/18/mysql/#

// MySQL修改密码,官方指导,按照对应版本操作
https://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html