1.从mysql官网下载合适的压缩包下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads,选择合适的版本
我的是64位的系统所以选择下载最后一项。
2.将下载下来的压缩包解压,将解压后的文件夹命名为mysql,把mysql文件夹复制到/usr/lib。
3.创建用户组
sudo groupadd mysql //创建用户组mysql
sudo useradd -r -g mysql mysql //-r参数表示mysql用户是系统用户,不可用于登录系统,创建用户mysql并将其添加到用户组mysql中
sudo chown -R mysql mysql/
sudo chgrp -R mysql mysql/
4.创建配置文件,并设置文件权限(很重要)
vim /etc/my.cnf
sudo chmod 644 my.cnf
添加文件内容
[client]
default-character-set=utf8port = 3306socket = /tmp/mysql.sock[mysql]
default-character-set=utf8port = 3306socket = /tmp/mysql.sock[mysqld]
character_set_server=utf8init_connect='SET NAMES utf8'basedir=/usr/local/mysqldatadir=/usr/local/mysql/datasocket=/tmp/mysql.socklog-error=/var/log/mysqld.logpid-file=/var/run/mysqld/mysqld.pid #不区分大小写lower_case_table_names = 1sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTIONmax_connections=5000default-time_zone = '+8:00'#开启查询缓存
explicit_defaults_for_timestamp=true
skip-grant-tables
5.安装必要的依赖
sudo pacman -S numactl
sudo pacman -S ncurses5-compat-libs
6.切换到/var/log/创建日志文件mysqld.log并设置读写权限 。
7.切换到/usr/local/mysql/data,将data目录权限读写,并将目录下的auto.cnf和ib_buffer_pool权限修改为读写(需要修改权限的地方挺多,参考日志文件ysqld.log)。
8.切换到mysql目录下执行命令sudo bin/mysqld --initialize --user=mysql用来初始化数据库。
9.启动mysql:sudo /usr/local/mysql/support-files/mysql.server start
10.切换到mysql目录下执行登录命令bin/mysql -u root -p,如果提示输入密码直接回车就行了,我还没有给mysql用户设置密码。
11.登陆成功后修改用户密码,步骤:(1)USE mysql;(2)UPDATE user SET authentication_string = password ( '123' ) WHERE User = 'root' ;(3)flush privileges ;(4)quit;
12.将/etc/mysql/my.cnf中的skip-grant-tables注释,重启mysql:sudo /usr/local/mysql/support-files/mysql.server restart。