安装mysql二进制版

centos 7 卸载 mariadb 的正确命令

一、列出所有被安装的rpm package
rpm -qa | grep mariadb

二、强制卸载相关的软件
语句:rpm -e --nodeps 软件名
实例:rpm -e --nodeps mariadb-libs-5.5.37-1.el7_0.x86_64
(也可以使用yum remove mariadb-libs-5.5.37-1.el7_0.x86_64 -y,同时会删除掉postfix)

下载
https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
解压重命名为mysql,mv到/application目录下,或创建软连接

添加mysql用户(安装好授权即可,内置使用,不需要密码,不需要登陆):
useradd -s /sbin/nologin mysql

查看mysql用户:
id mysql

授权mysql用户可对mysql程序目录和数据目录的权限:
chown -R mysql.mysql /application/*
chown -R /data

设置环境变量:
vim /etc/profile
export PATH=/application/mysql/bin:$PATH

source /etc/profile
查看版本:
mysql -V

添加挂载数据磁盘(略):
查看fdisk -l
格式化mkfs.xfs /dev/sdc(根据情况),格式化之后生产Uuid,使用它挂载
查看uuid命令blkid
创建目录mkdir /data(挂载点)
编辑文件vim /etc/fstab,添加内容(引号可保留可删除)UUID="blkid查到的sdc的uuid" /data xfs defaults 0 0开机自动挂载
挂载mount -a
查看挂载df -h

初始化系统数据(维持mysql启动运行):
5.6版本:/application/mysql/scripts/mysql_install_db
5.7版本(mysqld路径是/application/mysql/bin/mysqld,有环境变量可直接使用mysqld):
mkdir /data/mysql/data -p
chown -R mysql.mysql /data
mysqld --initialize --user=mysql --basedir=/application/mysql --datadir=/data/mysql/data(可能报错,error while loading shared libraries:libaio.so.1,缺共享库)
按照libaio:
yum install -y libaio-devel
重新初始化mysqld --initialize --user=mysql --basedir=/application/mysql --datadir=/data/mysql/data,输出的最后一行生成了初始临时密码(root@localhost)
密码要求:12位,大小写+数字+特殊符号,180天过期,所以可以使用--initialize-insecure参数就没有这些限制也没有临时密码(5.7新特性),第一次直接使用mysql命令登陆(需要执行\rm -rf /data/mysql/data/*将上次初始化数据删除)
初始化会在/data/mysql/data目录下生成一堆文件和目录

创建配置文件:
cat >/etc/my.cnf <<EOF
[mysqld]
user=mysql
basedir=/application/mysql
datadir=/data/mysql/data
socket/tmp/mysql.sock
server_id=6
port=3306
[mysql]
socket=/tmp/mysql.sock
EOF

启动(5.7有2种方法,sys-v和systemd)
sys-v(centos6默认的服务管理模式,centos7也可使用):
cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld
service mysqld restart 或 /etc/init.d/mysqld restart(关闭stop,启动start)
查看是否启动成功:
netstat -lnp | grep 3306 或 ps -ef | grep 3306(或mysql) 或使用mysql命令连接服务端

systemd(sys-v启动之后,需要关闭,才能再用systemd方式启动):
cat >/etc/systemd/system/mysqld.service <<EOF
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/applicaiton/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE=5000
EOF

systemctl start mysqld(停止stop)

第三启动种方式,命令行方式,维护常用(当数据文件整个没有权限,没法写入启动日志,也可以用该方式启动):
/applicaiton/mysql/bin/mysqld --defaults-file=/etc/my.cn
会将输出打印到控制台,方便排错,pkill mysqld可以杀掉进程

注意:
/data/mysql/data下的文件及目录,必须是mysql.mysql的权限,如果执行chown -R root.root ibdata1,就会启动不了,执行chown -R mysql. 或chown -R mysql.mysql 改回去
报错日志:/data/mysql/data/主机名.err,查看里面的[error]日志
启动不了常见原因,/etc/my.cnf路径不对,/tmp/mysql.sock文件被修改或删除,数据目录权限不是mysql,参数错误等

设置管理员密码(root@localhost):
mysqladmin -uroot -p password 密码,回车需要输入原密码,为空,回车

猜你喜欢

转载自www.cnblogs.com/kibana/p/12235282.html