首页
关于
Search
1
CentOS安装Nginx
81 阅读
2
Ubuntu 安装 Docker 的两种方法
49 阅读
3
Linux安装Maven
43 阅读
4
MagicMirror模块安装
43 阅读
5
在CentOS 7.9里源码编译安装Mysql 5.7
41 阅读
WordPress
MagicMirror
Mysql
登录
Search
〆尐亻寸ゾ
累计撰写
11
篇文章
累计收到
2
条评论
首页
栏目
WordPress
MagicMirror
Mysql
页面
关于
搜索到
1
篇与
的结果
2023-07-04
在CentOS 7.9里源码编译安装Mysql 5.7
安装之前先更新一下系统yum -y update && yum -y upgrade清理安装环境yum erase mariadb mariadb-server mariadb-libs mariadb-devel -y userdel -r mysql rm -rf /etc/my* rm -rf /var/lib/mysql1. 下载mysql5.7源码包 官方下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloadsSelect Operating System 选择 Source CodeSelect OS version 选择 All Operating Systems推荐下载第二个带boost的mysql。如果您下载了第一个不带boost的mysql,则需要您自己手动安装boost。# 定位到相应目录 cd /usr/local/src wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.42.tar.gz 2. 带boost的mysql源码包安装#安装依赖 yum -y install ncurses ncurses-devel bison cmake gcc gcc-c++ yum -y install openssl-devel # 添加启动 MySQL 服务的用户 groupadd mysql useradd mysql -s /sbin/nologin -M -g mysql #说明: # -s /sbin/nologin 用户不能登录系统 # -M 不创建用户的HOME目录 # -g 指定用户登录组的GID或组名 # 创建目录 sudo mkdir -p /usr/local/mysql sudo mkdir -p /usr/local/mysql/data sudo mkdir -p /usr/local/mysql/log sudo mkdir -p /usr/local/mysql/tmp # 或者 mkdir -p /usr/local/mysql/{data,log,tmp} sudo chown -R mysql:mysql /usr/local/mysql # 解压并进入目录 tar -zxvf mysql-boost-5.7.42.tar.gz cd mysql-5.7.42 # 预编译 cmake \ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ -DSYSCONFDIR=/etc \ -DMYSQL_UNIX_ADDR=/usr/local/mysql/tmp/mysql.sock \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ -DMYSQL_DATADIR=/usr/local/mysql/data \ -DMYSQL_TCP_PORT=3306 \ -DWITH_SSL=system \ -DWITH_BOOST=boost # 从cmake到这里是一行命令,复制的时候一起复制 echo $? 0 # 如果是0,预编译通过,其他数字,表示失败,自行排错 # 编译参数的参考文档:https://dev.mysql.com/doc/refman/5.7/en/source-configuration-options.html # 如果在CMAKE的过程中有报错,当报错解决后,需要把源码目录中的CMakeCache.txt文件删除,然后再重新Cmake # 正式编译,1-2小时 make -j4 make install # 复制配置文件 5.7.18之后没有默认配置文件也能启动mysql cp support-files/my-medium.cnf /etc/my.cnf # 修改安装目录的所有者和所属组 chown -R mysql:mysql /usr/local/mysql chgrp -R mysql /usr/local/mysql # 初始化,生成一个临时的mysql root用户密码 /usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --socket=/usr/local/mysql/mysql.sock # 提示: # 生成初始化密码参数(5.7版本才有),必须要添加,否则会初始化失败,会生成空密码 # --initialize 会为 root 用户生成一个随机的密码,这个随机密码可能会被输出到初始化过程中,也有可能输出到错误日志中 --initialize-insecure # 设定初始化用户 --user=mysql # 设定mysql工作目录 --basedir=/usr/local/mysql # 设定数据文件目录 --datadir=/usr/local/mysql/data # 启动mysql,修改root密码为123456 /usr/local/mysql/support-files/mysql.server start # 启动后,按回车回到命令行 # 登陆 /usr/local/mysql/bin/mysql -u root -p # 修改root密码为123456 set password for root@localhost = password('123456'); # 不方便管理,系统没有mysql这个命令,没有设置开机启动。 # 先停止mysql /usr/local/mysql/support-files/mysql.server stop # 注册成systemd服务 cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld /etc/init.d/mysqld start # 这一步自动注册成systemd服务了,可以使用systemctl管理mysql了 chmod +x /etc/init.d/mysqld systemctl stop mysqld systemctl start mysqld systemctl enable mysqld # 添加mysql、mysqldump、mysqlpump等一系列命令 vim /etc/profile # 文件末尾追加 PATH=$PATH:/usr/local/mysql/bin # 验证mysql命令 source /etc/profile mysql -u root -p Enter password: 123456 # 开启ssl功能 /usr/local/mysql/bin/mysql_ssl_rsa_setup --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data # 测试启动 /usr/local/mysql/bin/mysqld_safe --user=mysql # ctrl+Z停止 CentOS开启3306端口# 开启端口3306 firewall-cmd --zone=public --add-port=3306/tcp --permanent # 重启防火墙 firewall-cmd --reload #查看已经开放的端口 firewall-cmd --list-ports # 数据库开放root登录权限 mysql -uroot -p use mysql select Host,User from user; update user set host='%' where user = 'root'; select Host,User from user; show variables like '%port%'; flush privileges; firewall -cmd --zone=public --remove-port=80/tcp --permanent #删除防火墙80端口# 导入sql mysql> source SQL文件的绝对路径
2023年07月04日
41 阅读
0 评论
0 点赞