一、下载mysql 8.0和mysql 5.7.30
mysql下载地址:
https://dev.mysql.com/downloads/mysql/
1、下载mysql 8.0
我使用的centos7,这里选择linux-generic,然后下载第一个,第一个解压就可以用了(.tar.xz)。
2、下载mysql 5.7
先选择以前的版本,同样下载第一个。
二、安装
1、解压并移动(这里使用5.7,另一个操作类似)
1
2
|
tar -xvf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz /usr/local/mysql5.7
|
2、配置mysql
mysql服务需要单独的用户,所以添加用户组及用户mysql
- 修改文件所属用户用户组
1
|
chown mysql:mysql /usr/local/mysql -R
|
- 创建mysql配置文件我在mysql目录下创建的my.cnf
这里面就是具体的文件目录配置,以及端口号
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
# 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
[mysqld]
skip-grant-tables
#mysql安装目录
basedir=/usr/local/mysql5.7
#mysql数据库目录
datadir=/usr/local/mysql5.7/data
port = 3307
[mysqld_safe]
#错误日志
log-error=/usr/local/mysql5.7/data/error.log
#pid文件
pid-file=/usr/local/mysql5.7/data/mysqld.pid
tmpdir=/tmp/mysql5.7
#
# include all files from the config directory
#
#!includedir /etc/my.cnf.d
|
3、初始化
这里需要手动设置两个路径以及用户,--initialize-insecure是不生成随机密码的方式,--initialize会在日志生成随机密码
1
|
/usr/local/mysql5.7/bin/mysqld --initialize-insecure --datadir=/usr/local/mysql5.7/data/ --basedir=/usr/local/mysql5.7/ --user=mysql
|
4、启动
使用我们自己的my.cnf启动
这时候可以使用mysqld_safe,但是这样启动关闭起来也只能用命令关闭,所以需要使用脚本
进入mysql目录的support-files文件夹编辑mysql.server
1
|
vim /usr/local/mysql5.7/support-files/mysql.server
|
编辑以下内容
1
2
3
4
5
6
7
|
basedir=/usr/local/mysql5.7
datadir=/usr/local/mysql5.7/data
lockdir='/var/lock/subsys5.7'
lock_file_path="$lockdir/mysql5.7"
mysqld_pid_file_path=/usr/local/mysql5.7/data/mysqld.pid
#搜索conf后再修改,这个在else语句里面
conf=/usr/local/mysql5.7/my.cnf
|
复制该文件到/etc/init.d并重命名为mysql5.7
1
|
cp -i /usr/local/mysql5.7/support-files/mysql.server /etc/init.d/mysql5.7
|
使用方法
1
|
service mysql5.7 {start|stop|restart|reload|force-reload|status}
|
启动
启动后会报错
Starting MySQL.Logging to '/usr/local/mysql/data/error.log'. ERROR! The server quit without updating PID file (/usr/local/mysql/data/mysql.pid).
原因是没有在mysql目录下创建data目录,我们创建一个data目录,并修改为用户用户组为mysql,再启动即可。
其他版本的mysql也这样配置,只要设置好路径就共存
|