本文主要给大家介绍MySQL是如何安装的,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下MySQL是如何安装的吧。
一、源码编译安装mariadb:
1、 工具包安装(mariadb安装环境)
yum install bison bison-devel zlib-devel libcurl-devel libarchive-devel boost-devel gcc gcc-c++ cmake ncurses-devel gnutls-devel libxml2-devel openssl-devel libevent-devel libaio-devel
2、 做准备用户和数据目录
mkdir /data useradd -r -s /sbin/nologin -d /data/mysqldb -m mysql tar -xvf mariadb-10.2.15.tar.gz
3、 cmake 编译安装:
cmake的重要特性之一是其独立于源码(out-of-source)的编译功能,即编译工作可以在
另一个指定的目录中而非源码目录中进行,这可以保证源码目录不受任何一次编译的影
响,因此在同一个源码树上可以进行多次不同的编译,如针对于不同平台编译
进入解压的源码包文件夹下: cd mariadb-10.2.15/
复制如下代码并执行:
cmake \
-DCMAKE_INSTALL_PREFIX=/app/mysql \
-DMYSQL_DATADIR=/data/mysqldb \
-DMYSQL_UNIX_ADDR=/app/mysql/data/mysql.sock \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_EXAMPLE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DMYSQL_TCP_PORT=3306 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DMYSQL_USER=mysql \
-DWITH_DEBUG=0
编译参数说明
cmake \
-DCMAKE_INSTALL_PREFIX=/app/mysql \ #安装的根目录
-DMYSQL_DATADIR=/data/mysqldb \ #数据存放目录
-DMYSQL_UNIX_ADDR=/usr/local/mysql/data/mysql.sock \ #UNIX socket文件
-DENABLED_LOCAL_INFILE=1 \ #启用加载本地数据
-DWITH_INNOBASE_STORAGE_ENGINE=1 \ #支持InnoDB引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \ #支持ARCHIVE引擎
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ #支持BLACKHOLE引擎
-DWITH_FEDERATED_STORAGE_ENGINE=1 \ #支持FEDERATED引擎
-DWITH_EXAMPLE_STORAGE_ENGINE=1 \ #支持EXAMPLE引擎
-DWITH_PARTITION_STORAGE_ENGINE=1 \ #支持PARTITION引擎
-DWITH_MYISAM_STORAGE_ENGINE=1 \ #支持MYISAM引擎
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \ #支持PERFSCHEMA引擎
-DMYSQL_TCP_PORT=3306 \ #对外开放的默认端口
-DEXTRA_CHARSETS=all \ #支持所有扩展字符支持
-DDEFAULT_CHARSET=utf8 \ #默认字符集为utf8 latin
-DDEFAULT_COLLATION=utf8_general_ci \ #默认字符校对utf8
-DMYSQL_USER=mysql \ #指定mysql启动用户
-DWITH_DEBUG=0 #调试模式
执行完后开始进行编译安装,执行如下命令:
make && make install(可指定cpu核心数 -j [number])
提示:如果出错,执行rm -f CMakeCache.txt
4、准备环境变量
echo 'PATH=/data/mysql/bin:$PATH' >/etc/profile.d/mysql.sh
重新执行刚修改的初始化文件,使之立即生效 :
. /etc/profile.d/mysql.sh(或者source)
5、生成数据库文件
cd /app/mysql/ scripts/mysql_install_db --datadir=/data/mysqldb/ --user=mysql
6、准备配置文件
cp /data/mysql/support-files/my-huge.cnf /etc/my.cnf
7、准备启动脚本
cp /app/mysql/support-files/mysql.server /etc/init.d/mysqld
8、启动服务
chkconfig --add mysqld ;service mysqld start
二、通用二进制格式安装
1、数据库存放的空间,逻辑卷
fdisk /dev/sda partprobe pvcreate /dev/sda6 vgcreate vg0 /dev/sda6 lvcreate -n mysql -l +100%FREE vg0 mkfs.xfs /dev/vg0/mysql
将上面创建的逻辑卷进行挂载,并设置开机自动挂载
mkdir /data mount /dev/vg0/mysql /data vim /etc/fstab
2 创建mysql系统用户
useradd -r -s /sbin/nologin -d /data/mysql -m mysql
3 二进制程序存放对应路径
tar xvf mariadb-10.2.16-linux-x86_64.tar.gz -C /usr/local/ cd /usr/local/
在当前目录下创建软连接mysql
ln -s mariadb-10.2.16-linux-x86_64/ mysql
更改所属组为mysql
chown -R root.mysql /usr/local/mysql/
4 PATH变量
vim /etc/profile.d/mysql.sh PATH=/usr/local/mysql/bin:$PATH . /etc/profile.d/mysql.sh
5 创建数据库相关数据文件(初始化数据库)
cd /usr/local/mysql/ scripts/mysql_install_db --datadir=/data/mysql --user=mysql
6 准备Mysql配置文件
cp /usr/local/mysql/support-files/my-huge.cnf /etc/my.cnf vim /etc/my.cnf datadir=/data/mysql
7 准备启动脚本
chkconfig --list cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld chkconfig --add mysqld chkconfig --list service mysqld start
8 启动脚本进行安全加固
mysql_secure_installation
至此mariadb已经安装完毕。
三、MySQL多实例安装(yum)
1、创建mysql相关目录
mkdir /mysqldb/{3306,3307,3308}/{etc,bin,data,pid,socket,log} -pv
2、yum安装MariaDB-server
yum install mariadb-server
3、更改目录所属权限
chown -R mysql.mysql /mysqldb/
4 、生成数据库文件
mysql_install_db --datadir=/mysqldb/3306/data --user=mysql mysql_install_db --datadir=/mysqldb/3307/data --user=mysql mysql_install_db --datadir=/mysqldb/3308/data --user=mysql
5、准备配置文件
cp /etc/my.cnf /mysqldb/3306/etc/ vim /mysqldb/3306/etc/my.cnf [mysqld] port=3306 datadir= /mysqldb/3306/data socket=/mysqldb/3306/socket/mysql.sock [mysqld_safe] log-error=/mysqldb/3306/log/mariadb.log pid-file=/mysqldb/3306/pid/mariadb.pid cp /mysqldb/3306/etc/my.cnf /mysqldb/3307/etc/ cp /mysqldb/3306/etc/my.cnf /mysqldb/3308/etc/ sed -i 's/3306/3307/g' /mysqldb/3307/etc/my.cnf sed -i 's/3306/3308/g' /mysqldb/3308/etc/my.cnf
6、生成启动脚本
cp mysqld /mysqldb/3306/bin/ vim /mysqldb/3306/bin/mysqld chmod +x /mysqldb/3306/bin/mysqld
7、启动关闭服务
/mysqldb/3306/bin/mysqld start /mysqldb/3306/bin/mysqld stop /mysqldb/3306/bin/mysqld restart
8、指定套接字文件启动不同监听端口的mysql服务
mysql -S /mysqldb/3306/socket/mysql.sock mysql -S /mysqldb/3307/socket/mysql.sock mysql -S /mysqldb/3308/socket/mysql.sock
9、 修改root口令
mysqladmin -S /mysqldb/3306/socket/mysql.sock password 'centos'
看完以上关于MySQL是如何安装的,很多读者朋友肯定多少有一定的了解,如需获取更多的行业知识信息 ,可以持续关注我们的行业资讯栏目的。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。