1、通过编译、二进制安装MysqL5.7
二进制安装:
1)安装依赖包
yum -y install libaio numactl-libs
2)创建用户和组
groupadd MysqL
useradd -r -g MysqL -s /bin/false MysqL
3)准备程序相关文件
wget http://mirrors.163.com/MysqL/Downloads/MysqL-5.7/MysqL-5.7.33-linux-glibc2.12-x86_64.tar.gz
tar xf MysqL-5.7.33-linux-glibc2.12-x86_64.tar.gz -C /usr/local
cd /usr/local/
ln -s MysqL-5.7.33-linux-glibc2.12-x86_64/ MysqL
chown -R root.root /usr/local/MysqL/
4)准备环境变量
echo 'PATH=/usr/local/MysqL/bin:$PATH' > /etc/profile.d/MysqL.sh
. /etc/profile.d/MysqL.sh
5)准备配置文件
cp /etc/my.cnf{,.bak}
vim /etc/my.cnf
[MysqLd]
datadir=/data/MysqL
skip_name_resolve=1
socket=/data/MysqL/MysqL.sock
log-error=/data/MysqL/MysqL.log
pid-file=/data/MysqL/MysqL.pid
[client]
socket=/data/MysqL/MysqL.sock
生成root空密码
MysqLd --initialize-insecure -user=MysqL --datadir =/data/MysqL
7)准备服务脚本并启动MysqL
cp /usr/local/MysqL/support-files/MysqL.server /etc/init.d/MysqLd
chkconfig --add MysqLd
service MysqLd start
- 测试登录
编译安装:
1)安装依赖
yum -y install gcc gcc-c++ cmake bison bison-devel zlib-devel libcurl-devel \
libarchive-devel boost-devel ncurses-devel gnutls-devel libxml2-devel \
openssl-devel libevent-devel libaio-devel perl-Data-Dumper
2)创建用户
useradd -r -s /sbin/nologin -d /data/MysqL MysqL
3)下载并解压缩MysqL源码包
tar xvf mysql-5.6.51.tar.gz -C /usr/local/src
4)源码编译安装 MysqL
cd /usr/local/src/mysql-5.6.51/
cmake . \
-DCMAKE_INSTALL_PREFIX=/apps/MysqL \
-DMysqL_DATADIR=/data/MysqL/ \
-DSYSconfdIR=/etc/ \
-DMysqL_USER=MysqL \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITHOUT_MROONGA_STORAGE_ENGINE=1 \
-DWITH_DEBUG=0 \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_ZLIB=system \
-DWITH_LIBWRAP=0 \
-DENABLED_LOCAL_INFILE=1 \
-DMysqL_UNIX_ADDR=/data/MysqL/MysqL.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
make && make install
5)准备环境变量
echo 'PATH=/apps/MysqL/bin:$PATH' > /etc/profile.d/MysqL.sh
. /etc/profile.d/MysqL.sh
cd /apps/MysqL/
scripts/MysqL_install_db --datadir=/data/MysqL/ --user=MysqL
7)准备配置文件
cp -b /apps/MysqL/support-files/my-default.cnf /etc/my.cnf
8)准备启动脚本,并启动服务
cp /apps/MysqL/support-files/MysqL.server /etc/init.d/MysqLd
chkconfig --add MysqLd
service MysqLd start
9)安全初始化
MysqL_secure_installation
2、二进制安装mariadb10.4
(1)在CentOS 7系统上,yum info mariadb可以找到提供mariadb包的官方网站,在到官方网站下载最新的mariadb包,然后rz到Linux系统上去
wget http://ftp.hosteurope.de/mirror/archive.mariadb.org//mariadb-10.4.5/bintar-linux-glibc_214-x86_64/mariadb-10.4.5-linux-glibc_214-x86_64.tar.gz
(2)准备用户
useradd -r -d /app/MysqLdb -m -s /sbin/nologin MysqL //-r创建系统用户,-d指定家目录,-m强制创建家目录,-s指定shell不允许这个用户登录
(3)准备数据库目录
创建MysqL用户指定的家目录就是数据库目录,但是建议使用逻辑卷,因为这个目录是存放数据库的,会逐渐增大,而逻辑卷能够扩展。
(4)准备二进制程序
1.tar xvf mariadb-10.2.8-linux-x86_64.tar.gz -C /usr/local //默认是放在/usr/local目录下
2.cd /usr/local
3.ln -s mariadb-10.2.8-linux-x86_64.tar.gz/ MysqL //在/usr/local下, mariadb的数据库的目录已经生成,但是这个目录不符合要求,要求mariadb数据库必须放在MysqL目录下,所以有两种方法解决,一是改名,将生成的mariadb数据库目录改为MysqL,二是创建软链接,我们就选择创建软链接的方式
(5)准备配置文件
1.cd /usr/local/MysqL/support-files //这个目录下的一些文件可以当MysqL的配置文件,我们就选my-huge.cnf作为MysqL的配置文件
2.mkdir /etc/MysqL/ //建立MysqL配置文件的目录
3.cp my-huge.cnf /etc/my.cnf //MysqL的配置文件名也是有要求的,所以要改名为my.cnf
4.vim /etc/my.cnf //复制过来之后还要修改一下配置文件
[MysqLd]
datadir = /data/MysqLdb //数据库的数据放在哪,关键的一行,必须加,下面两行可以不加
innodb_file_per_table = on//数据库中有很多表,加上这一行就可以使每个表单独生成一个文件
skip_name_resolve = on //为了加速访问速度,忽略名字的反向解析
这样配置文件就编辑好了
1.cd /usr/local/MysqL/
2./scripts/MysqL_install_db --user=MysqL --datadir=/data/mydata //创建MysqL的数据库,指定数据库的路径以及用户名身份,执行完之后就会在/app/MysqLdb下生成了数据库文件。
注意:创建MysqL的系统数据库,系统提供了一个脚本,我们直接可以利用它来生成MysqL的系统数据库,这个脚本就在scripts下,但是不要进去运行脚本,否则会报错,必须在/usr/local/MysqL/下运行脚本
3.ls /app/MysqLdb //查看一下生成的数据库文件
(7)准备日志文件
1.mkdir /var/log/mariadb/ //创建日志文件所在的目录
2.chown MysqL /var/log/mariadb/ //因为是以MysqL用户的身份来写日志的,所以创建了这个目录还必须修改一下其所属人为MysqL,以保证MysqL用户能对/var/log/mariadb/目录有写权限
(8)启动服务
1.cp support-files/MysqL.server /etc/init.d/MysqLd //在/usr/local/MysqL/support-files目录下有一个现成的服务脚本,但是这个服务脚本必须放在规定的目录/etc/init.d/下才能使用,复制到这个目录下,并改名为MysqLd,将来这个服务名就叫MysqLd
2.chkconfig --add MysqLd
3.service MysqLd start //开启服务,成功开启服务之后,会打开了3306端口
4.ss -nutl //查看一下3306端口是否打开
1.vim /etc/profile.d/MysqL.sh
PATH=/usr/local/MysqL/bin:$PATH
2./etc/profile.d/MysqL.sh //使添加的PATH变量生效
(10)运行MysqL安全脚本
1.cd /usr/local/MysqL
2.MysqL_secure_installation
(11)测试,运行一下MysqL程序,-u指定用户,-p后面跟口令(该口令是上一步运行安全脚本给root用户设置的口令)
MysqL -uroot -p口令
update user set password=password(‘123456’) where user=‘root’;
grant all privileges on . to ‘root’@’%’ identified by ‘123456’ with grant option;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。