之前写过一篇mysql在windows下的安装(猛击这儿),linux下用的比较少,最近切换到linux服务器了,发行mysql安装和windows下有所不同,只记录压缩包方式安装,rpm包类似
1、下载安装包
这个就不多说了,从官网或者其他地方都可以下载 。
然后上传到需要安装的服务器上。
2、解压缩
理论上可以解压到任何目录,我的解压路径为 /data/mysql-5.6
1 tar -zxvf mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz -C /data/mysql-5.6
3、创建软连接。
为了执行命令方便,作个连接比较好,当然也可以不做这一步
--连接路径
cd/usr/local--执行
ln-s /data/mysql-5.6 mysql
4、为mysql创建用户组
-s /bin/false参数指定mysql用户仅拥有所有权,而没有登录权限
--创建用户组
groupadd mysql--创建用户
useradd-r -g mysql -s /bin/false mysql
5、为mysql安装目录添加权限
就是给上面创建的用户分配权限
cd /data/mysql-5.6chown-R mysql:mysql ./
6、安装mysql
当前所在路径是 /data/mysql-5.6.
./mysql_install_db --datadir=/data/mysql-5.6/data --basedir=/data/mysql-5.6 --user=mysql
如果出错,报“/usr/bin/perl: bad interpreter: No such file or directory”,可以先安装perl脚本,命令如下:
yum -y install perl perl-develyum install -y perl-Data-Dumper
完成后再执行上面初始化mysql脚本。。。。
如果是5.7以上版本,可以直接执行命令
./bin/mysqld --user=mysql --basedir=/data/mysql-5.6 --datadir=/data/mysql-5.6/data --initialize
执行完仔细看看命令,给root生成一个随机密码了。。。
7、开启mysql的SSL加密连接
./bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
8、把mysql放入系统进程
cp support-files/mysql.server /etc/init.d/mysqld
然后修改配置信息
# vi /etc/init.d/mysqld
9、配置mysql
默认配置文件所在位置 /etc/my.cnf,执行完步骤6的时候会默认生成一个配置文件
vi /etc/my.cnf
[mysqld]
datadir=/data/mysql-5.6/data
socket=/data/mysql-5.6/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unitfile formariadb according to the
# instructionsin http://fedoraproject.org/wiki/Systemd
# 指定编码
character-set-server=utf8
collation-server=utf8_general_ci
user=mysql
[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log #可以改为其他路径,确保路径存在,并且mysql用户组有写入权限
pid-file=/var/run/mariadb/mariadb.pid
#
# include all files from the config directory
#!includedir /etc/my.cnf.d
#指定客户端连接mysql时的socket通信文件路径
[client]
socket=/usr/local/mysql/mysql.sock
default-character-set=utf8
10、启动服务
如果没有错误则启动成功
./support-files/mysql.server start
也可以使用命令
# service mysqld start
如果没有以外会出现启动成功提示
PS:可能出现日志权限错误:mysqld_safe error: log-error set to '/usr/local/mysql/logs/mysqld.log', however file don't exists. Create writable for user 'mysql'.
就创建个mysqld.log文件,把权限赋给mysql用户就好了
chown -R mysql:mysql mysqld.log
11、重启mysql
service mysqld restart
12、登陆一下
#第一次登陆没有密码,直接回车
./mysql -u root -p
13、修改root密码
#xxx就是你的新密码/data/mysql-5.6/bin/mysqladmin -u root password 'xxx'
14、开启远程访问权限
#mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION; #允许root用户远程访问,有风险
#mysql>FLUSH PRIVILEGES; #刷新权限
至此mysql安装阶段完成了。。