欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

linux安装MySQL5.7记录

程序员文章站 2021-12-13 11:51:04
linux安装MySQL记录 1. 在根目录下创建文件夹/software和数据库数据文件/data/mysql 2. 从官网下载相应的MySQL版本 3. 解压并移动到/software目录下 4. 创建mysql用户组和mysql用户 5. 关联myql用户到mysql用户组中 6. 更改文件夹... ......

目录

linux安装mysql5.7记录

虚拟机未装过mysql,第一次安装mysql。自己指定安装目录,指定数据文件目录。
linux系统版本: centos 7.3 64位
安装源文件版本:mysql-5.7.24-linux-glibc2.12-x86_64.tar.gzip
mysql安装位置:/software/mysql-57
数据库文件数据位置:/data/mysql

安装步骤

1. 在根目录下创建文件夹/software和数据库数据文件/data/mysql

[root@localhost ~]# mkdir /software/
[root@localhost ~]# mkdir /data/mysql

2. 从官网下载相应的mysql版本

下载安装包:
linux安装MySQL5.7记录

3. 解压并移动到/software目录下

[root@localhost ~]# tar -zxvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
[root@localhost ~]# mv mysql-5.7.24-linux-glibc2.12-x86_64/  /software/mysql-57

4. 创建mysql用户组和mysql用户

[root@localhost ~]# groupadd mysql
[root@localhost ~]# useradd -r -g mysql mysql

5. 关联myql用户到mysql用户组中

[root@localhost ~]# chown -r mysql:mysql  /software/mysql-57/
[root@localhost ~]# chown -r mysql:mysql  /data/mysql/
[root@localhost ~]# chown -r mysql  /software/mysql-57/
[root@localhost ~]# chown -r mysql  /data/mysql

6. 更改文件夹的权限

[root@localhost ~]# chmod -r 755 /software/mysql-57/

7. 安装libaio依赖包

如果系统之前装过其他的数据库,那么依赖包可能存在,可以用命令行测试下,如果不存在就进行安装。

[root@localhost ~]# yum list installed | grep libaio
# 如果没有就进行安装
[root@localhost ~]# yum search libaio
[root@localhost ~]# yum install libaio

8. 初始化mysql命令

[root@localhost ~]# cd /software/mysql-57/bin
[root@localhost ~]# ./mysqld --user=mysql --basedir=/software/mysql-57 --datadir=/data/mysql --initialize

在执行上面命令后会出几行信息。信息的最后一行为:

# root@localhost: 后面跟的是mysql数据库登录的临时密码,各人安装生成的临时密码不一样,
# 将密码复制保存,后续登录mysql要使用
[note] a temporary password is generated for root@localhost: ad8#*>y(f4cq

9. 修改mysql配置文件

[root@localhost ~]# vim /software/mysql-57/support-files/mysql.server

主要是修改相应文件夹的位置,修改为之前创建的文件夹。
mysql.server
修改前

......
if test -z "$basedir"
then
basedir=/usr/local/mysql
bindir=/usr/local/mysql/bin
if test -z "$datadir"
then
datadir=/usr/local/mysql/data
fi
sbindir=/usr/local/mysql/bin
libexecdir=/usr/local/mysql/bin
else
......

修改后

......
mysqld_pid_file_path=
if test -z "$basedir"
then
  basedir=/software/mysql-57
  bindir=/software/mysql-57/bin
  if test -z "$datadir"
  then
    datadir=/data/mysql
  fi
  sbindir=/software/mysql-57/bin
  libexecdir=/software/mysql-57/bin
else
......

将修改好的文件放入系统服务文件夹内。这样每次就可以通过service mysqld start来启动服务。

[root@localhost ~]# cp /software/mysql/support-files/mysql.server  /etc/init.d/mysqld
[root@localhost ~]# chmod 755 /etc/init.d/mysqld

my.cnf

[root@localhost ~]# vim /etv/my.cnf

修改前

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# settings user and group are ignored when systemd is used.
# if you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/systemd

[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid

修改后

[client]
no-beep
socket =/software/mysql-57/mysql.sock
port=3306
[mysql]
default-character-set=utf8
[mysqld]
basedir=/software/mysql-57
datadir=/data/mysql
port=3306
pid-file=/software/mysql-57/mysqld.pid
skip-name-resolve
socket = /software/mysql-57/mysql.sock
character-set-server=utf8

其中skip_name_resolve。这个参数是禁止域名解析的。

10. 启动mysql服务

因为新版本的mysql安全启动只认 /usr/local/mysql 这个路径。所以要进行相应的修改,通常有两种方法进行修改。

  • 建立软链接
#local下没有mysql文件夹的话,新建一个
[root@localhost ~]# cd /usr/local/mysql
[root@localhost ~]# ln -s /sofware/mysql-57/bin/myslqd mysqld
  • 修改 mysqld_safe 文件
[root@localhost ~]# vim /software/mysql/bin/mysqld_safe
#将所有的/usr/local/mysql改为/software/mysql-57,保存退出

启动mysql:

[root@localhost ~]# /etc/init.d/mysqld start
这样服务就能安全启动。

11. 登录mysql

[root@localhost ~]# /software/mysql/bin/mysql -u root –p
# 输入临时密码。临时密码就是之前root@localhost:后面的内容

12. 修改mysql的登录密码

## password('123456') 括号中的123456就是修改后的的密码,不过建议密码不要这么简单
>mysql set password=password('123456');
## 对root用户进行授权,"%"表示在任何一台电脑上都可以登录;也可以指定某台机器可以远程登录;
>mysql grant all privileges on *.* to root@'%' identified by 'root';
## 刷新表
>mysql flush privileges;

操作到这里,mysql的基本安装过程已经完成,此时mysql的登录名root, 登录密码123456

13. mysql服务的启动和关闭

查看mysql服务的两种方式

[root@localhost ~]# ps -ef|grep mysql

[root@localhost ~]# netstat -nlp|grep mysql

启动mysql服务

[root@localhost ~]# service mysql start
如果服务在启动状态,直接重启服务用以下命令:
[root@localhost ~]# service mysql restart

关闭mysql服务

service mysql stop

其他mysql相关的博文
mysql5.7 常用用户操作
centos7 firewall开放3306端口