最近打算在家里服务器上部署云盘,所以又开始了一系列的环境搭建操作,在安装mysql的时候发现有一些与以前不同,于是记录下来,避免下次再出现像今天这样到处搜索问题。
一.卸载旧版本
使用下面的命令检查是否安装有MySQL Server
rpm -qa | grep mysql
有的话通过下面的命令来卸载掉
1
2
|
rpm -e mysql // 普通删除模式 rpm -e --nodeps mysql // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除 |
二:安装MySQL
1.安装依赖
yum -y install make gcc-c++ cmake bison-devel ncurses-devel
2.获取源码(国内建议去sohu的镜像下载http://mirrors.sohu.com/mysql...
mysql5.7需要boost这个库,网上很难找到合适的版本,建议直接下载有boost库的mysql版本
1
2
3
|
wget http: //mirrors .sohu.com /mysql/MySQL-5 .7 /mysql-boost-5 .7.24. tar .gz tar xvf mysql-boost-5.7.24. tar .gz cd mysql-5.7.24 |
3.编译安装
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
cmake \ -DCMAKE_INSTALL_PREFIX= /usr/local/mysql \ -DMYSQL_DATADIR= /usr/local/mysql/data \ -DSYSCONFDIR= /usr/local/mysql/etc \ -DWITH_MYISAM_STORAGE_ENGINE=1 \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_MEMORY_STORAGE_ENGINE=1 \ -DWITH_READLINE=1 \ -DMYSQL_UNIX_ADDR= /usr/local/mysql/data/mysql .sock \ -DMYSQL_TCP_PORT=3306 \ -DENABLED_LOCAL_INFILE=1 \ -DWITH_PARTITION_STORAGE_ENGINE=1 \ -DEXTRA_CHARSETS=all \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DDOWNLOAD_BOOST=1 -DWITH_BOOST=. /boost make && make install |
编译的参数可以参考http://dev.mysql.com/doc/refm...。
三:配置MySQL
使用下面的命令查看是否有mysql用户及用户组
1
2
|
cat /etc/passwd #查看用户列表 cat /etc/group #查看用户组列表 |
如果没有就创建
1
2
|
groupadd mysql useradd -g mysql mysql |
修改/usr/local/mysql权限
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
chown -R mysql:mysql /usr/local/mysql mysql5.7.18以后不再提供默认的mysql配置文件,这里我们再网上找了一个简单的配置, vi /etc/my .cnf 然后写入一下内容 [client] port = 3306 default-character- set =utf8 [mysqld] # 一般配置选项 basedir = /usr/local/mysql datadir = /usr/local/mysql/data port = 3306 character- set -server=utf8 default_storage_engine = InnoDB sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION 配置服务脚本 cp /usr/local/mysql/support-files/mysql .server /etc/init .d /mysql chkconfig mysql on #添加到开机启动项 service mysql start #启动mysql 将mysql执行文件加到path目录, vi /etc/profile PATH= /usr/local/mysql/bin :$PATH export PATH |
然后执行source /etc/profile
四:初始化mysql
1.执行初始化脚本(初始化成功最后一行会生成mysql root密码注意记录下来,或者也可以用./mysqld --initialize--insecure初始化一个空密码的账号)
1
2
3
4
|
cd /usr/local/mysql/bin . /mysqld --initialize --user=mysql --basedir= /usr/local/mysql --datadir= /usr/local/mysql/data ... 2019-04-11T14:34:15.922856Z 1 [Note] A temporary password is generated for root@localhost: /rTmud (Th5Yy |
2.防火墙开放3306端口
Firewalld中添加端口方法如下:
1
2
|
firewall-cmd --zone=public --add-port=3306 /tcp --permanent firewall-cmd --reload |
总结
以上所述是小编给大家介绍的centos7下安装mysql的教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
原文链接:https://segmentfault.com/a/1190000018842368