MYSQL的编译安装(centos7)
简介
MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
实验步骤
官网下载源码包
下载链接
一般centos7会自带mariadb,需要先把mariadb卸载。
rpm -qa | grep mariadb #查找是否安装mariadb如果没有则跳过这步
rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64 #卸载mariadb
yum安装依赖包
yum install libaio
新建存放mysql的目录
mkdir /usr/local/mysql/data
chmod -R 777 /usr/local/mysql/mysqldb/ #根据自己需求给权限
创建mysql账户,并将文件夹属主属组配置为mysql。
useradd mysql
passwd mysql
chown -R mysql:mysql /usr/local/mysql
scp上传文件
scp 上传文件相对路径或绝对路径 用户@地址:服务器存放路径
创建my.cnf配置文件
vim /etc/my.cnf
[mysqld]
port=3306 # 设置3306端口
basedir=/usr/local/mysql # 设置mysql的安装目录
datadir=/usr/local/mysql/data # 设置数据存放目录
max_connections=10000 # 允许最大连接数
max_connect_errors=10 # 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
character-set-server=utf8 # 服务端使用的字符集默认为UTF8
default-storage-engine=INNODB # 创建新表时将使用的默认存储引擎
default_authentication_plugin=mysql_native_password # 默认使用“mysql_native_password”插件认证
[mysql]
default-character-set=utf8 # 设置mysql客户端默认字符集
[client]
port=3306 # 设置mysql客户端连接服务端时默认使用的端口
default-character-set=utf8
安装mysql
cd /usr/local/mysql/bin
./mysqld --initialize --console #执行命令并设置随机密码 root@localhost后面的内个
启动
cd /usr/local/mysql/support-files
./mysql.server start
遇见问题 PID file 错误
先确认权限问题,再看一眼是否出现端口占用情况。
后续操作
将启动文件copy至/etc/init.d/mysqld
cp mysql.server /etc/init.d/mysqld
service mysqld restart 查看是否可以重启
增加软链接
cd /usr/local/mysql/bin #移动至安装目录
ln -s /usr/local/mysql/bin/mysql /usr/bin 增加软连接
登录mysql并设置远程登录
mysql -u root -p随机密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码'; #修改密码
use mysql;
update user set user.Host='%' where user.User='root';
flush privileges;
exit
重启服务并验证
service mysqld restart
netstat -anp | grep 3306
完