前言:
本文以mariadb为例进行讲解,安装mysql同理,并以通过测试。安装前查找系统已安装的相关包(rpm -qa|grep -e "mysql" -e "mariadb")并进行卸载。
1、准备mariadb存储数据库文件的目录。
mkdir -p /mydata/data chown mysql:mysql data #如本机没有mysql用户及组需新建系统用户、组 例: #groupadd -r -g 306 mysql #如需指定组需先建立组再指定,例 -g 306 useradd -r -M -s /sbin/nologin mysql
数据库文件占用内存较大,为保证可扩展性建议放在逻辑卷上。以下为配置逻辑卷过程,不需要的话可跳过下面步骤,直接到第二步。
① 配置逻辑卷分区或新加硬盘
② 创建逻辑卷lv
③ 使用xfs文件系统逻辑卷才能有扩展性,由于Centos 6 默认不支持xfs文件系统需借助软件xfsprogs。
yum install xfsprogs -y #安装xfsprogs modprobe xfs #加载xfs文件系统驱动 mkfs.xfs /dev/myvg/mydata #创建文件系统
④ 挂载xfs文件系统
vim /etc/fstab :r!blkid /dev/myvg/mydata UUID=1a5a90a2-2559-494f-954a-7177911e3535 /mydata xfs defaults 0 0 mount -a
2、配置并安装mariadb
① 去官网下载mariadb二进制安装包https://downloads.mariadb.org/ Centos 6 系统建议安装5版本稳定版就好,不要去安装10以上版本。本文以安装mariadb-5.5.57-linux-x86_64.tar.gz为例。
tar xvf mariadb-5.5.57-linux-x86_64.tar.gz -C /usr/local #解压到/usr/local cd /usr/local ln -sv mariadb-5.5.57-linux-x86_64/ mysql #创建软连接 chown -R root:mysql mysql/ #递归修改文件属主属组
② 准备配置文件
配置格式:类ini格式,各程序由单个配置文件提供配[prog_name]
配置文件查找次序:后面覆盖前面的配置文件
/etc/my.cnf --> /etc/mysql/my.cnf --> --default-extrafile=/PATH/TO/CONF_FILE --> ~/.my.cnf
mkdir /etc/mysql cp /usr/local/mysql/support-files/my-large.cnf /etc/mysql/my.cnf #复制模板配置文件到/etc/mysql并改名为my.cnf vim /etc/mysql/my.cnf 找到[mysqld]下新增如下配置 datadir = /mydata/data innodb_file_per_table = on #使用innodb引擎,每个表单独一个数据库 skip_name_resolve = on #禁止主机名解析,加快速度 lower_case_table_names = 1 #忽略表单大小写 character-set-server=utf8mb4 #设定默认字符为utf8mb4 可选配置示例: basedir = /usr/local/mysql #socket = /tmp/mysql.sock #如自定义socket位置需要在[client]段同时配置,port也要配置。否则可能出错 pid-file = /data/mysqldata/mysql.pid [mysqld_safe] #需手动创建logs/error.log并改为mysql属主 log-error = /mydata/data/error.log
③ 创建数据库文件
cd /usr/local/mysql #不同版本位置不同,有的在bin目录下 scripts/mysql_install_db --user=mysql --datadir=/mydata/data #注意不要进入scripts目录执行,该方法即将被废弃新方法如下 mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/home/mysql 在初始化时如果加上 –initial-insecure,则会创建空密码的 root@localhost 账号,否则会创建带密码的 root@localhost 账号
④ 准备服务脚本并启动服务
cp support-files/mysql.server /etc/init.d/mysqld #复制服务脚本并改名mysqld chkconfig --add mysqld chkconfig mysqld on #设为开机启动
⑤加入可执行路径
vim /etc/profile.d/mysql.sh export PATH=/usr/local/mysql/bin:$PATH . /etc/profile.d/mysql.sh
⑥ 安全初始化
/user/local/mysql/bin/mysql_secure_installation #配置root密码,删除匿名用户等操作
⑦ 准备日志文件并启动服务
touch /var/log/mysqld.log touch /mydata/data/error.log chown mysql /var/log/mysqld.log chown mysql /mydata/data/error.log service mysqld start
安装完成!
如遇到错误ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp
编辑my.cnf
[client] socket = /tmp/mysql.sock #设置与mysqld段中设置的相同 或者 ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
yum安装方式:
此种方式可安装各版本mysql,在此页面https://dev.mysql.com/downloads/repo/yum/下载对应系统repo文件安装包
例:
centos7 https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
centos6 https://dev.mysql.com/get/mysql80-community-release-el6-1.noarch.rpm
下载安装后,到/etc/yum.repos.d/下编辑mysql-community.repo .默认启用的是最新版,编辑把最新版的enabled=0,把想安装的版本改为1即可。之后yum install mysql-server 即可完成安装,如需多次安装可把对应mysql-server包下载下来,然后安装,例yum localinstall mysql-community-server-5.7.23-1.el7.x86_64.rpm
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。