Linux二进制安装MySQL5.6
2023-02-18 16:34:36 时间
二进制安装:官网已经将源代码编译完成,安装的过程需要我们自己完成。
1.准备用户
指定运行软件的身份(每个服务都应该有一个专有的账号来运行)
[root@CentOS8 local]# groupadd -r -g 306 mysql
[root@CentOS8 local]# useradd -r -g 306 -u 306 -d /data/mysql mysql #系统账号不会默认创建这个家目录,需要手动创建
-r:表示创建的是一个系统用户,会默认给一个1000以内的uid,默认不生成家目录和邮箱、不分配shell
-g:指定gid
-u:指定uid
-d:指定家目录,(指定mysql存放数据的位置)
2.准备数据目录
[root@CentOS8 local]# mkdir -p /data/mysql
[root@CentOS8 local]# chown mysql.mysql /data/mysql/
3.准备二进制程序
下载对应的二进制安装包:
https://downloads.mysql.com/archives/community/
[root@CentOS8 ~]# tar -xzf mysql-5.6.51-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
#需要解压到固定的位置,二进制安装是别人已经帮我们编译完了,编译的时候使用congifure脚本指定未来安装的路径时(prefix)默认就是在/usr/local
[root@CentOS8 ~]# cd /usr/local
[root@CentOS8 ~]# ln -sv mysql-5.6.51-linux-glibc2.12-x86_64 mysql
#因为编译的时候安装路径是不带版本号的,但是咱们解压的时候带了版本号,所以需要创建要给不带版本号的软连接并更改所有者和所属组。
[root@CentOS8 ~]# chown -R root:root /usr/local/mysql/
4.准备配置文件
二进制安装的时候没有提供配置文件,官方提供了模板配置文件。
[root@CentOS8 local]# cp mysql/support-files/my-default.cnf /etc/my.cnf
[root@CentOS8 ~]# vim /etc/my.cnf
mysql语句块中添加以下三个选项
[mysqld]
datadir = /data/mysql #指定数据存放路径
innodb_file_per_table = on 在mariadb5.5以上版的是默认值,可不加
skip_name_resolve = on 禁止主机名解析,建议使用
5.创建数据库文件
此时/data/mysql中的内容还不存在,需要通过初始化脚本把默认带的数据库相关配置文件生成。
[root@CentOS8 ~]# cd /usr/local/mysql/
[root@CentOS8 ~]# ./scripts/mysql_install_db --datadir=/data/mysql --user=mysql --basedir=/usr/local/mysql
查看是否创建成功:
[root@centos8 mysql]# ls /data/mysql/ -l
total 110604
-rw-rw---- 1 mysql mysql 12582912 Jun 1 16:44 ibdata1
-rw-rw---- 1 mysql mysql 50331648 Jun 1 16:44 ib_logfile0
-rw-rw---- 1 mysql mysql 50331648 Jun 1 16:44 ib_logfile1
drwx------ 2 mysql mysql 4096 Jun 1 16:44 mysql
drwx------ 2 mysql mysql 4096 Jun 1 16:44 performance_schema
drwx------ 2 mysql mysql 4096 Jun 1 16:44 test
6.准备启动的服务脚本
提供了模板的服务启动脚本,只需要拷贝到对应的位置启动就行了
[root@centos8 mysql]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@CentOS8 mysql]# chkconfig --add mysqld
[root@CentOS8 mysql]# service mysqld start
Starting MySQL.Logging to '/data/mysql/CentOS8.cc.err'.
............ SUCCESS!
7.配置PATH
不修改PATH的话每次都要写全路径。
[root@CentOS8 mysql]# echo 'PATH=/usr/local/mysql/bin:$PATH' > /etc/profile.d/mysql.sh
[root@CentOS8 mysql]# . /etc/profile.d/mysql.sh
8.安装mysql客户端
[root@CentOS8 mysql]# yum install mysql -y
[root@CentOS8 mysql]# yum install -y ncurses-compat-libs
测试:
[root@CentOS8 mysql]# mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.6.51 MySQL Community Server (GPL)
Copyright (c) 2000, 2021, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
#正常
常见问题:
[root@CentOS8 mysql]# ./scripts/mysql_install_db --datadir=/data/mysql --user=mysql --basedir=/usr/local/mysql
-bash: ./scripts/mysql_install_db: /usr/bin/perl: bad interpreter: No such file or directory
解决:
[root@CentOS8 mysql]# yum install perl perl-devel
安装好mysql客户端以后
[root@CentOS8 mysql]# mysql
mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory
解决:yum install -y ncurses-compat-libs
相关文章
- 双十一来了,别让你的mongodb宕机了
- 分享几个你可能不知道的交互式Git 命令
- 实践GoF的23的设计模式:SOLID原则(下)
- 实践GoF的23种设计模式:SOLID原则(上)
- k8s源码Client-go中Reflector解析
- HTTP流量神器Goreplay核心源码详解
- 手把手带你基于嵌入式Linux移植samba服务
- 8天学通MongoDB——第八天 驱动实践
- 8天学通MongoDB——第七天 运维技术
- 8天学通MongoDB——第六天 分片技术
- 8天学通MongoDB——第五天 主从复制
- 8天学通MongoDB——第四天 索引操作
- 8天学通MongoDB——第三天 细说高级操作
- 8天学通MongoDB——第二天 细说增删查改
- 8天学通MongoDB——第一天 基础入门
- Linux命令对应的英文及整体学习法
- 在线客服系统源码开发实战总结:Golang的Gin框架整合实现session
- Golang实现小型CMS内容管理功能(二):前端接入百度ueditor富文本编辑器
- 在线客服系统源码开发实战总结:Golang实现CMS内容管理增删查改功能
- 在线客服系统源码开发实战总结:Golang实现对接微信公众号网页授权接口功能