MySQL、MariaDB安装和多实例配置

本文目录:
1. MySQL单实例安装
  1.1 rpm安装mysql
  1.2 通用二进制包安装mysql
    1.2.1 初始化数据库
    1.2.2 安装后的规范化操作
  1.3 编译安装
    1.3.1 编译安装过程
    1.3.2 初始化
    1.3.3 规范化
    1.3.4 cmake编译MySQL时的选项说明
2. mysql多实例配置
  2.1 mysql多实例配置过程
  2.2 提供sysV服务管理脚本
  2.3 提供systemd服务管理脚本
3. mariadb安装

本文介绍mysql各种安装方法(rpm/glibc通用二进制/源码编译)以及多实例配置的方法,没什么技术,算是一篇方法归总文章。

本文的安装环境为CentOS6.6和centos7.2,但大多数地方都以centos6.6作为演示示例。

本文安装MySQL时,它们的运行身份为mysql,数据目录datadir为/mydata/data。

pid文件路径设置为/mydata/data/mysql.pid或/mydata/data/`hostname`.pid。

由于mariadb和mysql 5系列并没有太大的不同。因此仅详细展示mysql的安装。最后将简单提一提mariadb。

1. mysql单实例安装 1.1 rpm包安装mysql

直接yum安装mysql-server即可。但注意两点:

(1).centos7上,yum默认将安装mariadb。
(2).centos6上,yum默认安装的版本比较老(5.1版),要安装mysql 5.6或mysql 5.7,可以从官方下载,也可以使用以下配置的yum源。

cat <<eof>/etc/yum.repos.d/mysql.repo [mysql] name=MySQL baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/6/\$basearch/ # baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/6/\$basearch/ # baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/7/\$basearch/ # baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/\$basearch/ enabled=1 gpgcheck=0 eof

此外,在sohu镜像站点也提供了mysql的各个rpm版本。地址:

还需注意,配置了yum源后安装Mysql将使用mysql-community-*安装各mysql相关包,例如mysql-community-server。

安装完成后,启动mysqld。

shell> service mysqld start # 或 systemctl start mysqld

如果启动失败,则可能需要初始化MySQL。

shell> mkdir -p /mydata/data shell> chown -R mysql.mysql /mydata/data shell> mysql_install_db --datadir=/mydata/data --user=mysql

如果使用mysql_install_db初始化时提示该命令已经废弃(5.7版本可能会如此提示),那么使用下面的命令进行初始化。

# 初始化时,为root@localhost创建一个临时密码存放在mysql.log中 shell> mysqld --initialize --datadir=/mydata/data --user=mysql # 初始化时,为root@localhost创建一个空密码 shell> mysqld --initialize-insecure --datadir=/mydata/data --user=mysql

初始化后再启动,启动成功后连接数据库并修改root@localhost用户的密码,然后退出。

shell> mysql mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456'; mysql> \q

如果前面使用mysqld --initialize初始化数据库,那么将会为"root@localhost"创建一个密码,这将使得无法直接使用mysql命令连接数据库。可以先从mysql.log中筛选出创建的临时密码,然后再手动修改为"123456"。

shell> grep 'temporary password' /var/log/mysqld.log shell> mysql -uroot -p mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456'; mysql> \q 1.2 通用二进制包安装mysql

通用二进制包相当于windows中的便携版软件,解压后稍微配置下就可以直接使用,不用安装。

mysql通用二进制版官方下载地址:

其中文件中的glibc2.12表示的是Linux系统的glibc版本要比2.12新,可以使用ldd --version查看glibc版本。在CentOS 6上glibc默认就是2.12的,所以无需顾虑。

shell> tar xf mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz -C /usr/local/ shell> ln -s /usr/local/mysql-5.6.35-linux-glibc2.5-x86_64 /usr/local/mysql 1.2.1 初始化数据库

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/34940e79b6de6dc3cc1570e752003025.html