Linux实战(四):CentOS 7安装MySQL

目录

一、下载MySQL

二、解压MySQL

三、把MySQL移动到安装目录

四、创建数据仓库目录

五、创建用户组和用户并修改权限 

六、初始化数据

七、修改系统配置文件

八、将mysql.server文件拷贝到init.d目录下

九、启动MySQL服务器

十、为MySQL配置环境变量

十一、 初始化密码

十二、 开机自启配置

十三、 允许root账户IP登录


一、下载MySQL

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

MySQL国内镜像下载地址:

Index of /mysql/

二、解压MySQL

tar -zxvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

三、把MySQL移动到安装目录

把解压后的文件夹移动到/usr/local/,并将MySQL文件夹重命名为mysql

mv mysql-5.7.24-linux-glibc2.12-x86_64 /usr/local/mysql

四、创建数据仓库目录

在/usr/local/mysql目录下创建data目录

mkdir /usr/local/mysql/data

五、创建用户组和用户并修改权限 

#创建用户组
groupadd mysql
#创建用户,-r:创建系统账户,-g:指定用户登录组的GID或组名
useradd -r -g mysql mysql
#修改mysql目录下所有的目录及文件夹所属的用户组和用户,以及权限:
chown -R mysql:mysql /usr/local/mysql

六、初始化数据

cd /usr/local/mysql/bin
./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql

注:执行初始化数据时,可能会遇到如下问题

出现该问题首先检查该链接库文件有没有安装使用 命令进行核查

rpm -qa | grep libaio

运行命令后发现系统中无该链接库文件

yum install  libaio-devel.x86_64

安装成功后,继续运行数据库的初始化命令,此时可能会出现如下错误:

执行如下命令后:

注:记录日志最末尾位置root@localhost:后的字符串,此字符串为mysql管理员临时登录密码。(ga-0ErNrAkMr)

七、修改系统配置文件

由于mysql内没有my-default.cnf文件,直接编辑/etc/my.cnf文件

vi my.cnf

my.cnf

[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
user=mysql
port=3306
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'
symbolic-links=0
max_connections=200
default-storage-engine=INNODB
lower_case_table_names=1
max_allowed_packet=32M
explicit_defaults_for_timestamp=true
[mysqld_safe]
log-error=/var/log/mysql/mysql.log
pid-file=/var/run/mysql/mysql.pid

因为my.cnf中配置了log-error、pid-file路径,因此需要在/var/log/、/var/run/创建mysql目录,并且给mysql用户全部的权限(chmod)

# 创建目录
mkdir /var/log/mysql
mkdir /var/run/mysql
# 授权
chmod -R 777 /var/log/mysql/
chmod -R 777 /var/run/mysql/

八、将mysql.server文件拷贝到init.d目录下

# 把mysql.server文件拷贝到/etc/init.d目录下,init.d目录存放的是一系列系统服务的管理脚本,使用service命令可执行init.d目录中相应的服务脚本。通俗来说,拷贝后即可通过 service mysql start 命令启动MySQL,而不需要进入到mysql.server目录下启动。
cp mysql.server /etc/init.d/mysql
vim /etc/init.d/mysql

九、启动MySQL服务器

# 使用mysql.server的全路径启动MySQL
/usr/local/mysql/support-files/mysql.server start
# 如果已经将mysql.server移动到了/etc/init.d目录下,可以直接使用下方的命令启动MySQL
service mysql start

十、为MySQL配置环境变量

1.修改profile文件

vim /etc/profile

2.配置mysql环境变量

在profile文件的最后一行配置MySQL的环境变量:

export MYSQL_HOME=/usr/local/mysql
export PATH=$PATH:$MYSQL_HOME/bin

3.刷新profile使MySQL环境变量生效

source /etc/profile

十一、 初始化密码

1.修改my.cnf文件跳过认证

vim /etc/my.cnf

添加如下内容:

[mysqld]
skip-grant-tables

2.重启MySQL服务

service mysql restart

3. 免密登陆MySQL

#直接点击回车,密码为空
mysql -u root -p

4. 修改用户密码

#选择数据库
use mysql;
flush privileges;
set password for 'root'@localhost=password('root');

注: 如果直接设置密码,可能会提示如下错误,这个时候,先输入flush privileges;命令,再修改密码即可。

5.退出MySQL

quit;

注:退出后记得将my.cnf改回正常的配置(将跳过认证的配置删除并重启mysql服务)

十二、 开机自启配置

chmod +x /etc/init.d/mysql
chkconfig --add mysql
chkconfig --list

 如果看到mysql的服务,并且3,4,5都是on的话则成功,如果是off,则输入:

chkconfig --level 345 mysql on

 然后重启电脑

reboot

查看MySQL的运行状态

service mysql status

十三、 允许root账户IP登录

在通过数据库管理工具连接数据库前,需要先允许root账户IP登录。

mysql -u root -p
use mysql;
update user set host = '%' where user = 'root';
flush privileges;
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值