一、二进制版本安装
1.1 添加mysql组和mysql用户,用于设置mysql安装目录文件所有者和所属组。
groupadd mysql
useradd -r -g mysql mysql
* useradd -r参数表示mysql用户是系统用户,不可用于登录系统。
* useradd -g参数表示把mysql用户添加到mysql用户组中。
1.2 解压gz包(我存放的目录为/home/mysql-5.7.13-linux-glibc2.5-x86_64.tar.gz)
1、解压二进制文件:tar -zxvf /home/mysql-5.7.13-linux-glibc2.5-x86_64.tar.gz
2、修改文件夹名称:mv mysql-5.7.13-linux-glibc2.5-x86_64 mysql-5.7.13
3、进入mysql跟目录:cd mysql-5.7.13
4、修改mysql目录所属的组和用户,更改权限:chown -R mysql . *后面有个点千万别忘了。
chgrp -R mysql .
5、在mysql根目录下创建data文件夹:mkdir data
6、初始化mysql:bin/mysqld --initialize --user=mysql --basedir=/home/mysql-5.7.13 --datadir=/home/mysql-5.7.13/data (该方法为5.7以上的。之前版本的请去百度查询相关初始化方法)
A temporary password is generated for root@localhost: i7YCy.:jv6yr
成功初始化后,最后一行会输出root的初始密码,请记录下来,方便后续使用。
7、将mysql/目录下除了data/目录的所有文件,改回root用户所有,mysql用户只需作为mysql/data/目录下所有文件的所有者:chown -R root .
chown -R mysql data
8、复制配置文件:cp support-files/my-default.cnf /etc/my.cnf
9、修改my.cnf配置文件
basedir = /home/mysql-5.7.13
datadir = /home/mysql-5.7.13/data
port = 3306
socket = /home/mysql-5.7.13/tmp/mysql.sock
log_error= /home/mysql-5.7.13/data/mysql.log
join_buffer_size = 128M
sort_buffer_size = 2M
read_rnd_buffer_size = 2M
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
#sql语句不区分表名的大小写
lower_case_table_names = 1
#服务器端编码格式
character-set-server=utf8
[client]
socket = /home/mysql-5.7.13/tmp/mysql.sock
#客户端编码格式
default-character-set=utf8
*tmp目录不存在,请创建之。否则会出错 创建后要赋予mysql权限,chown -R mysql:mysql tmp
如果mysql.sock指定到/tmp以外的目录,需要在my.cnf中添加[client]并且指定socket位置,
否则登录mysql时会报错:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
应该是,默认会找tmp目录下的sock文件
二、mysql服务加入开机自启动项
1、将/home/mysql-5.7.13/ support-files/mysql.server 拷贝为/etc/init.d/mysql并设置运行权限。
修改mysql.server中basedir的相关路径,改为自定义的路径,默认路径是/usr/local/mysql:
cp mysql.server /etc/init.d/mysql
chmod +x /etc/init.d/mysql
2、注册mysql为开机启动服务
chkconfig --add mysql
3、查看是否添加成功
chkconfig --list mysql
mysqld 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
4、开启关闭mysql服务
/etc/init.d/mysql start 或者 serivce mysql start 或者 bin/mysqld_safe&
/etc/init.d/mysql stop 或者 service mysql stop 或者 bin/mysqladmin -uroot -p
5、加入环境变量
修改/etc/profile文件使其永久性生效,并对所有系统用户生效。
添加环境变量:
PATH=$PATH:/home/mysql-5.7.13:/home/mysql-5.7.13/bin
export PATH
保存后编译文件
source /etc/profile
6、登录mysql并修改密码
执行:mysql -uroot -p生成的密码
连上后,在做任何操作前,mysql要求要改掉root的密码后才能进行操作。
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
需要执行:alter user 'root'@'localhost' identified by 'xxxxxxx';