之前数据库一直是用的5.6的,5.7版本的json列一直想试一下,在阿里云的linux服务器上试了一下,跟5.6的安装还是有些区别的
1.下载mysql
在官网:https://dev.mysql.com/downloads/mysql/5.7.html#downloads中选择mysql版本
2.准备目录
我用的阿里云服务器
执行:mkdir /alidata/data/software,新建文件目录,将压缩包上传到此目录
执行:tar -xzvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz,将压缩包解压到此目录。
执行:mv mysql-5.7.22-linux-glibc2.12-x86_64 mysql,将文件夹重命名为mysql
执行:cd mysql ,然后mkdir data,在mysql下创建data文件夹(因为mysql5.7没有data文件夹,需要自己创建)
执行:mv mysql /usr/local,将mysql放到/usr/local目录下
3.新建用户及用户组
执行:groupadd mysql,添加用户组
执行:useradd -r -s /sbin/nologin -g mysql mysql -d /usr/local/mysql,新建mysql用户禁止登陆shell
4.改变mysql目录权限
将当前目录的拥有者设置为mysql用户和mysql组,改变目录权限
执行:chown -R mysql.mysql /usr/local/mysql/
5.初始化数据
执行:bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
生成了临时密码:69-fZexK(=ua
执行:bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data,创建RSA private key
6.修改/etc/my.cnf
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/var/lib/mysql/mysql.sock
lower_case_table_names = 1
log-error=/var/log/mysqld.log
pid-file=/usr/local/mysql/data/mysqld.pid
user=mysql
#skip-grant-tables
修改/etc/init.d/mysqld
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
将mysql.server赋值到/etc/init.d/下
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
然后就可以启动数据库了(service mysql start),如果出现错误
执行: ln -s /usr/local/mysql/bin/mysql /usr/bin 添加软连接
到这几基本上就安装成功了,中间也遇到了一些小问题,网上都能查到。这里额外提一句,mysqld为mysql服务器或者称之为服务器上的实例,两者不要弄混了。