1.获取源码包解压,确定rpm包的mysql-server和mysql未安装
[root@http1 mysql]# rpm -qa mysql [root@http1 mysql]# rpm -qa mysql-server [root@http1 ~]# ls anaconda-ks.cfg apr-util-1.5.3.tar.bz2 install.log apr-1.5.0 httpd24 install.log.syslog apr-1.5.0.tar.bz2 httpd-2.4.9 mariadb-5.5.36-linux-x86_64.tar.gz apr-util-1.5.3 httpd-2.4.9.tar.bz2
[root@http1 ~]# tar xf mariadb-5.5.36-linux-x86_64.tar.gz [root@http1 ~]# ls anaconda-ks.cfg apr-util-1.5.3.tar.bz2 install.log apr-1.5.0 httpd24 install.log.syslog apr-1.5.0.tar.bz2 httpd-2.4.9 mariadb-5.5.36-linux-x86_64 apr-util-1.5.3 httpd-2.4.9.tar.bz2 mariadb-5.5.36-linux-x86_64.tar.gz
2.移动到程序安装目录并创建软链接
[root@http1 ~]# mv mariadb-5.5.36-linux-x86_64 /usr/local [root@http1 ~]# cd /usr/local/ [root@http1 local]# ln -s mariadb-5.5.36-linux-x86_64/ mysql
3.创建mysql属主属组
[root@http1 local]# /usr/sbin/groupadd -r mysql [root@http1 local]# /usr/sbin/useradd -r -g mysql mysql
4.创建数据存放目录
格式化磁盘,设置为LVM
[root@http1 mysql]#echo "p\nn\np\n3\n\n+30G\nt\n3\n8e\nw" |fdisk /dev/sda [root@http1 mysql]# partx -a /dev/sda
创建LVM卷组及逻辑卷
[root@http1 mysql]# pvcreate /dev/sda3 Physical volume "/dev/sda3" successfully created [root@http1 mysql]# vgcreate myvg /dev/sda3 Volume group "myvg" successfully created [root@http1 mysql]# lvcreate -L 10G -n mylv myvg Logical volume "mylv" created
5.文件系统xfs的支持
[root@http1 mysql]# yum install xfsprogs [root@http1 mysql]# mkfs -t xfs /dev/myvg/mylv
6.实现自动挂载
[root@http1 mysql]# blkid /dev/myvg/mylv /dev/myvg/mylv: UUID="b7aa948b-89d7-40d6-887b-9821a257c408" TYPE="xfs" [root@http1 mysql]# vim /etc/fstab UUID="b7aa948b-89d7-40d6-887b-9821a257c408" /mydata xfs defaults 0 0 [root@http1 mysql]# mkdir /mydata [root@http1 mysql]# mount -a
7.创建数据在逻辑卷上的存放目录创建,更改目录属主属组
[root@http1 mysql]# mkdir /mydata/data [root@http1 mysql]# chown -R mysql:mysql /mydata/data
8.初始化安装mariadb
[root@http1 mysql]# scripts/mysql_install_db --user=mysql --datadir=/mydata/data [root@http1 mysql]# ls /mydata/data aria_log.00000001 aria_log_control mysql performance_schema test
9.mariadb配置文件创建,有模版
[root@http1 mysql]# mkdir /etc/mysql [root@http1 mysql]# cp support-files/my-large.cnf /etc/mysql/my.cnf
修改配置文件:
[root@http1 mysql]# vim /etc/mysql/my.cnf # The MariaDB server [mysqld] data_dir = /mydata/data #数据库数据存放目录 port = 3306 #监听端口 socket = /tmp/mysql.sock #套接字文件路径 skip-external-locking key_buffer_size = 256M max_allowed_packet = 1M table_open_cache = 256 sort_buffer_size = 1M read_buffer_size = 1M read_rnd_buffer_size = 4M myisam_sort_buffer_size = 64M thread_cache_size = 8 query_cache_size= 16M innodb_file_per_table = on #每个innodb文件一个表空间 # Try number of CPU's*2 for thread_concurrency thread_concurrency = 8 #线程数量,是cpu核心数*2
10.mariadb服务脚本创建
因为mariadb和mysql是兼容的,直接命名成mysql好记忆
[root@http1 mysql]# cp support-files/mysql.server /etc/rc.d/init.d/mysqld [root@http1 mysql]# chkconfig --list mysqld service mysqld supports chkconfig, but is not referenced in any runlevel (run 'chkconfig --add mysqld') [root@http1 mysql]# chkconfig --add mysqld
11.启动mysqld服务
[root@http1 mysql]# service mysqld start Starting MySQL... [ OK ] [root@http1 ~]# ls /mydata/data/ aria_log.00000001 ibdata1 mysql performance_schema aria_log_control ib_logfile0 mysql-bin.000001 test http1.stu31.com.pid ib_logfile1 mysql-bin.index
12.测试启动
加入mysql路径进环境变量
[root@http1 mysql]# vim /etc/profile.d/mysqld.sh export PATH=/usr/local/mysql/bin:$PATH [root@http1 mysql]# source /etc/profile.d/mysqld.sh [root@http1 mysql]# mysql Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 2 Server version: 5.5.36-MariaDB-log MariaDB Server Copyright (c) 2000, 2014, Oracle, Monty Program Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> select version(); +--------------------+ | version() | +--------------------+ | 5.5.36-MariaDB-log | +--------------------+ 1 row in set (0.00 sec) 安装完成!