一 安装
MySql 安装分为两种,分为二进制安装和 RPM 包安装,本文安装的方式为二进制安装
安装包下载: https://dev.mysql.com/downloads/mysql/ 点 Looking for the latest GA version 选择对应的版本下载。下面为作者云盘分享的包。
链接: https://pan.baidu.com/s/1uh1lhs2v-_2hgTfymlRD7g
提取码: meic
1.1 环境描述
准备的安装包: mysql-5.7.27-linux-glibc2.12-x86_64.tar.gz
需要安装的版本 5.7.27
安装目录: /usr/local/mysql
数据文件存放目录: /usr/local/mysql/data
1.2 安装前的准备
确认系统之前自带 Mariadb ,先将其卸载掉
|
[root@localhost ~]# rpm -qa|grep mariadb mariadb-libs-5.5.56-2.el7.x86_64 [root@localhost ~]# yum -y remove mariadb-libs-5.5.56-2.el7.x86_64 |
1.3 解压安装包
将上面提供的安装包解压到 /usr/local/, 并重命名
|
[root@localhost ~]# tar -zxvf /root/mysql-5.7.27-linux-glibc2.12-x86_64.tar.gz -C /usr/local/ [root@localhost ~]# cd /usr/local/ [root@localhost ~]# cd /usr/local/ [root@localhost local]#mv mysql-5.7.27-linux-glibc2.12-x86_64 mysql |
1.4 创建MySql用户和用户组
|
[root@localhost ~]# groupadd mysql [root@localhost ~]# useradd -g mysql mysql |
同时创建数据存放目录( /usr/local/mysql/data )
|
[root@localhost ~]# mkdir -p /usr/local/mysql/data |
修改 MySql 目录的归属用户
|
[root@localhost mysql]# cd /usr/local/mysql/ [root@localhost mysql]# chown -R mysql:mysql ./ |
1.5 准备MySql的配置文件
在 /etc 下新建 my.cnf 文件
|
[mysql] # 设置mysql 客户端默认字符集 default-character-set=utf8 socket=/var/lib/mysql/mysql.sock [mysqld] skip-name-resolve # 设置3306 端 ⼝ port = 3306 socket=/var/lib/mysql/mysql.sock # 设置mysql 的安装 ⽬ 录 basedir=/usr/local/mysql # 设置mysql 数据库的数据的存放 ⽬ 录 datadir=/usr/local/mysql/data # 允许最 ⼤ 连接数 max_connections=200 # 服务端使 ⽤ 的字符集默认为8 ⽐ 特编码的latin1 字符集 character-set-server=utf8 # 创建新表时将使 ⽤ 的默认存储引擎 default-storage-engine=INNODB lower_case_table_names=1 max_allowed_packet=16M |
创建如下目录,赋予权限
|
[root@localhost mysql]# mkdir /var/lib/mysql [root@localhost mysql]# chmod 777 /var/lib/mysql [root@localhost mysql]# cd /usr/local/mysql [root@localhost mysql]# ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data |
注:记住上面的 root 密码。后面首次登录需要使用。
1.6 复制启动脚本到资源目录
|
执行如下的命令复制 [root@localhost mysql]# cp ./support-files/mysql.server /etc/init.d/mysqld 修改mysqld 文件的basedir 和datadir 参数 [root@localhost mysql]# vi /etc/init.d/mysqld basedir=/usr/local/mysql datadir=/usr/local/mysql/data |
1.7 设置MySql系统服务并设置开机自启
赋予 mysqld 权限
|
[root@localhost mysql]# chmod +x /etc/init.d/mysqld |
同时将 mysqld 服务加到系统服务中
|
[root@localhost mysql]# chkconfig --add mysqld [root@localhost mysql]# chkconfig --list mysqld Note: This output shows SysV services only and does not include native systemd services. SysV configuration data might be overridden by native systemd configuration. If you want to list systemd services use 'systemctl list-unit-files'. To see services enabled on particular target use 'systemctl list-dependencies [target]'. mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off 确认2 ,3 ,4 ,5 状态是否为on 这样就说明mysqld 服务已经生效了,可以随系统启动而自动启动,以后可以使用server 命令控制mysql 的启停 |
1.8 启动MYSQLD
直接执行
|
service mysqld start |
1.8 修改环境变量
修改 root 的环境变量,添加环境变量
|
[root@localhost ~]# vi .bash_profile # 添加如下参数 export PATH=$PATH:/usr/local/mysql/bin [root@localhost ~]# source .bash_profile |
1.9首次登录MySql
|
[root@localhost ~]# mysql -u root -p Enter password: # 填这个 (vi9eNmmKPfd 修改root 账户密码 mysql> alter user user() identified by "111111"; mysql> flush privileges; 设置远程主机登录 mysql> use mysql; mysql> update user set user.Host='%' where user.User='root'; mysql> flush privileges; mysql> exit |