Linux下安装MySQL 5.6

1、下载二进制安装文件

使用wget下载MySQL 5.6.35二进制安装文件并存放在/root目录下。

wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz
ll mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz

2、创建mysql用户

先创建mysql组,再创建mysql用户并加入mysql组中。

groupadd mysql
useradd mysql -r -g mysql
# 验证用户组和用户
id mysql

3、创建程序、数据存放目录

按照如下路径规范创建MySQL的程序、数据存放路径。

mkdir /home/mysql/{program,data,conf} -p mkdir 
/home/mysql/data/mysqldata1/{mydata,sock,tmpdir,log,innodb_ts,\innodb_log,undo,slowlog,binlog,relaylog} -p 
tree /home/mysql/

4、解压缩二进制安装文件并设置目录权限

把二进制安装文件解压缩到/home/mysql/program目录下,并修改程序、数据存放路径宿主、属组为mysql,使MySQL用户对这些目录和文件有完全访问权限。

cd /root
tar xf mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz -C/home/mysql/\program/
chown mysql.mysql /home/mysql -R
# 查看datadir关键目录的权限是否正确
ll /home/mysql/data/mysqldata1/

5、软链接程序路径,并设置MySQL命令环境变量

把/home/mysql/program/mysql-5.6.35-linux-glibc2.5-x86_64路径软链接到MySQL默认的程序访问路径/usr/local/mysql下,并把/usr/local/mysql/bin/添加到系统环境变量中,以便使用mysql相关命令时不需要输入绝对路径。

ln -s /home/mysql/program/mysql-5.6.35-linux-glibc2.5-x86_64 /usr/local/mysql
# 查看basedir关键程序目录是否可用
ll /usr/local/mysql/
export PATH=$PATH:/usr/local/mysql/bin/
echo 'export PATH=$PATH:/usr/local/mysql/bin/' >> /etc/profile
# 查看环境变量配置是否成功添加到/etc/profile文件中
tail -1 /etc/profile

6、配置my.cnf文件参数

把样例配置文件复制到/home/mysql/conf目录下,并设置好相关路径系统参数:socket、pid-file、datadir、tmpdir、log-error、slow_query_log_file、log-bin、relay-log、innodb_data_home_dir、innodb_log_group_home_dir、innodb_undo_directory。

cp -ar /usr/local/mysql/support-files/my-default.cnf /home/mysql/\conf/my.cnf
ln -s /home/mysql/conf/my.cnf  /etc/my.cnf

# my.cnf配置文件内容如下
cat /home/mysql/conf/my.cnf
 
[client]
socket=/home/mysql/data/mysqldata1/sock/mysql.sock # sock文件所在路径
[mysqld]
user=mysql
basedir = /usr/local/mysql
socket=/home/mysql/data/mysqldata1/sock/mysql.sock # sock文件所在路径
pid-file=/home/mysql/data/mysqldata1/sock/mysql.pid # pid文件所在路径
datadir=/home/mysql/data/mysqldata1/mydata # 数据文件路径
tmpdir=/home/mysql/data/mysqldata1/tmpdir # 存放临时文件的路径
log-error=/home/mysql/data/mysqldata1/log/error.log
slow_query_log
slow_query_log_file=/home/mysql/data/mysqldata1/slowlog/slow-query.log
log-bin=/home/mysql/data/mysqldata1/binlog/mysql-bin
relay-log=/home/mysql/data/mysqldata1/relaylog/mysql-relay-bin
innodb_data_home_dir = /home/mysql/data/mysqldata1/innodb_ts
innodb_log_group_home_dir = /home/mysql/data/mysqldata1/innodb_log
innodb_undo_directory = /home/mysql/data/mysqldata1/undo/

7、初始化MySQL

使用mysql_install_db命令初始化MySQL数据字典库、ibdata1、log_file*等文件。

cd /usr/local/mysql/
./scripts/mysql_install_db --defaults-file=/home/mysql/conf/my.cnf --user=mysql
# FATAL ERROR: please install the following Perl modules before executing ./scripts/mysql_install_db:
# Data::Dumper
# 在源码安装MySQL-5.6.35之前,需要确保已经安装了Perl-Data-Dumper模块
yum install -y perl-Data-Dumper # 安装Perl-Data-Dumper模块

# 查看关键目录在初始化之后是否有正确的数据文件和目录、权限
ll /home/mysql/data/mysqldata1/{mydata,innodb_log,innodb_ts}/

8、启动MySQL

将mysql.server文件复制到/etc/init.d/目录下,命名为mysqld程序,并使用这个脚本启动和停止MySQL。

cp -ar /usr/local/mysql/support-files/mysql.server /etc/init.d/\mysqld
chmod +x /etc/init.d/mysqld
ll /etc/init.d/mysqld  # 查看/etc/init.d/mysqld是否被成功赋予执行权限
service mysqld start
ps aux |grep mysqld  # 查看进程和端口
netstat -ntupl | grep mysqld  # 查看mysqld服务有几个端口
vim /home/mysql/data/mysqldata1/log/error.log  查看错误日志
# 注意:日志中不能出现ERROR错误,看到最后一行输出版本号和socket信息就表示MySQL启动成功

登录MySQL:

相关推荐

  1. Linux安装MySQL

    2023-12-09 16:30:03       21 阅读
  2. ****LinuxMysql安装和配置

    2023-12-09 16:30:03       57 阅读
  3. mysqllinux安装与配置

    2023-12-09 16:30:03       29 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-09 16:30:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-09 16:30:03       100 阅读
  3. 在Django里面运行非项目文件

    2023-12-09 16:30:03       82 阅读
  4. Python语言-面向对象

    2023-12-09 16:30:03       91 阅读

热门阅读

  1. 查看域名A记录

    2023-12-09 16:30:03       44 阅读
  2. ogre3d 资料

    2023-12-09 16:30:03       62 阅读
  3. Flink 读写 HBase 总结

    2023-12-09 16:30:03       61 阅读
  4. Docker 常用命令

    2023-12-09 16:30:03       67 阅读
  5. 单元测试实战(一)Controller 的测试

    2023-12-09 16:30:03       56 阅读
  6. MySQL 配置和连接问题解决方案

    2023-12-09 16:30:03       52 阅读
  7. flink源码分析之功能组件(六)-心跳组件

    2023-12-09 16:30:03       64 阅读
  8. pgsql存储过程

    2023-12-09 16:30:03       54 阅读
  9. configure脚本的常用参数

    2023-12-09 16:30:03       65 阅读
  10. LambdaUpdateWrapper表达式新写法解释

    2023-12-09 16:30:03       56 阅读
  11. 蛋白质序列FeatureDict转化为TensorDict

    2023-12-09 16:30:03       50 阅读