- 安装mysql
- bug处理(没遇到可不看)
- 添加mysql为后台服务和开机自启动
- 放行3306端口,进行远程连接
1.安装mysql
本文档使用的是root用户,需要linux基础知识,推荐使用MobaXterm远程连接工具
下载地址:点击下载地址
(1)创建目录,将安装包放置在/usr/local/mysql目录中,建议使用MobaXterm远程连接软件上传安装包
#创建mysql目录
mkdir -p /usr/local/mysql
#进入到mysql目录
cd /usr/local/mysql
(2)解压安装包
#解压压缩包
tar -zxvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
#将解压后的文件命名为mysql5.7
mv mysql-5.7.24-linux-glibc2.12-x86_64 mysql5.7
#删除mysql压缩包,可以不删留着
rm -f mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
(3) 创建mysql用户和用户组
#创建mysql用户组
groupadd mysql
#创建mysql用户并加入到mysql组
useradd -r -g mysql mysql
(4)安装所需要的环境
#mysql依赖libaio库
yum install libaio
(5) 创建存放数据库的数据目录
mkdir -p /usr/local/mysql/mysql5.7/data
(6 )更改mysql目录下所有的目录及文件夹所属的用户组和用户,以及权限
chown -R mysql:mysql /usr/local/mysql
chmod -R 755 /usr/local/mysql
(7) 初始化mysql,务必记住初始化输出日志末尾的临时密码
#进入到mysql5.7的bin目录
cd /usr/local/mysql/mysql5.7/bin
#执行命令初始化mysql
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql/mysql5.7 --datadir=/usr/local/mysql/mysql5.7/data
(8)进入到系统/etc目录,创建配置文件my.cnf
vim /etc/my.cnf
#里面改成如下配置,全部复制粘贴即可
[mysqld]
basedir=/usr/local/mysql/mysql5.7
datadir=/usr/local/mysql/mysql5.7/data
socket=/var/lib/mysql/mysql.sock
port=3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
symbolic-links=0
max_connections=600
innodb_file_per_table=1
lower_case_table_names=1
character_set_server=utf8
[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid
socket=/var/lib/mysql/mysql.sock
[mysql]
socket=/var/lib/mysql/mysql.sock
(9)创建配置文件my.cf后,创建日志文件并赋予权限
mkdir -p /var/log/mariadb
touch /var/log/mariadb/mariadb.log
chown mysql:mysql /var/log/mariadb/mariadb.log
chmod 755 /var/log/mariadb/mariadb.log
mkdir -p /var/lib/mysql
chown mysql:mysql /var/lib/mysql
chmod 755 /var/lib/mysql
(10)启动mysql服务器
./usr/local/mysql/mysql5.7/support-files/mysql.server start
(11)设置环境变量
#编辑环境变量
vim /etc/profile
#在文件最后面加入下面配置
export MYSQL_HOME=/usr/local/mysql/mysql5.7
export MYSQL_PATH=${MYSQL_HOME}/bin:${MYSQL_HOME}/lib
export PATH=$PATH:/usr/local/mysql/mysql5.7/bin
#保存后激活环境变量
source /etc/profile
(12)登录mysql,修改密码为123456(密码为第七部生成的临时密码)
#登录mysql
mysql -u root -p
#设置你的密码
#以下为sql语句
set password for root@localhost = password('123456');
(13)开放远程连接(生产环境不建议开放)
#以下为sql语句
use mysql;
#设置远程登录
update user set user.Host='%' where user.User='root';
#刷新权限
flush privileges;
#退出mysql
exit
2.bug处理(没遇到可不看)
(1)mysql: error while loading shared libraries: libncurses.so.5: ca
#将文件复制改名为libncurses.so.5
cp /usr/lib64/libncurses.so.6 /usr/lib64/libncurses.so.5
(2) mysql: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory
#将文件复制改名为libtinfo.so.5
cp /usr/lib64/libtinfo.so.6 /usr/lib64/libtinfo.so.5
3.添加mysql为后台服务和开机自启动
(1)创建服务配置文件
#将服务文件拷贝到init.d下,并重命名为mysql
cp /usr/local/mysql5.7/support-files/mysql.server /etc/init.d/mysqld
#赋予可执行权限
chmod +x /etc/init.d/mysqld
#创建mysqld.service配置文件
vim /usr/lib/systemd/system/mysqld.service
#以下为配置文件内容
[Unit]
Description=MySQL Server
After=network.target
After=syslog.target
[Service]
User=mysql
Group=mysql
Type=forking
PermissionsStartOnly=true
ExecStart= /etc/init.d/mysqld start
ExecStop= /etc/init.d/mysqld stop
ExecReload= /etc/init.d/mysqld restart
LimitNOFILE = 5000
[Install]
WantedBy=multi-user.target
(2)启动mysql服务
#重新加载系统服务
systemctl daemon-reload
#开启mysql服务
systemctl start mysqld.service
#设置开机自启项
systemctl enable mysqld.service
#查看开机自启项,左边是服务名称,右边是状态
#enabled是开机启动,disabled是开机不启动
systemctl list-unit-files
4.放行3306端口,进行远程连接
#开启端口,如3306 MySQL数据库端口
#zone作用域,add-port=80/tcp添加端口,格式为:端口/通讯协议
#permanent永久生效,没有此参数重启后失效
firewall-cmd --zone=public --add-port=3306/tcp --permanent
#开启3306端口后,必须重启防火墙
systemctl restart firewalld.service
安装结束,可以使用本机连接工具如Nacivat连接MySQL了