最近在学习maria db,为了方便查阅,又为了将所学的知识重新的梳理,特作此随笔一篇,希望过后阅读时能有所感,也希望对大家能够有所帮助。
大家都知道,在linux上安装软件一共有三种方式:1、rpm包安装 。2、二进制程序包安装。3、源码编译安装。对于前2种方式安装起来会便捷不少,但是定制化程度低,当我们需要进行软件diy时,那么编译安装就再合适不过了。
对于centos 6 来说,使用yum安装,yum源里面默认提供的是低版本mysql,因此当我们想要安装maria db时,则需要使用编译安装。到centos 7后,可以使用yum源直接按照mariadb。
在编译之前,我们需要安装一些以来的库和包
yum -y groupinstall "development tools" "server platform development" #这两个库中包含很多常用的软件,例如openssl-devel、bison等
yum -y install cmake lrzsz #此处的lrzsz是一个用于物理机和虚拟机之间传输文件的软件,后面要将软件包从物理机中拷贝到虚拟机中。
grouped -r -g 306 mysql #添加一个系统组 useraddd -r -u 306 -g 306 mysql #添加一个系统用户并且加入对应的系统组中 mkdir -p /data/mysql #为mariadb设置对应目录 chown -r mysql.mysql /data/mysql #改变对应的属组属主,以便写入数据
rz #由于此处mariadb是放到物理机桌面的,因此使用此命令进行传输 tar -xf mariadb-10.0.13.tar.gz
cd mariadb-10.0.13.tar.gz
cmake -dcmake_install_prefix=/usr/local/mysql \ #安装目录为/usr/local/mysql,其中mysql目录可以不事先建立。
-dmysql_datadir=/data/mysql \ #数据存储的目录,需要事先建立,并且设置好属主属组,方便对应的属主属组读写数据
-dwith_xtradb_storage_engine=1 \ #默认已存在csv和myisam存储引擎,因此加入federatedx、archive、myisam、innobase、blackhole存储引擎。其中innodb最常用。
-dwith_federatedx_storage_engine=1 \
-dwith_archive_storage_engine=1 \
-dwith_innobase_storage_engine=1 \
-dwith_blackhole_storage_engine=1 \
-dwith_readline=1 \
-dwith_ssl=system \ #加入ssl、zlib库
-dwith_zlib=system \
-ddefault_charset=utf8 \ #设置字符集
-ddefault_collation=utf8_general_ci #设置排序方式
注:当此步骤出现
“
-- configuring done
-- generating done
” 时,即可进行下一步安装。
此步骤会生成一个"cmakecache.txt"文件,当出现问题时,需要将其删除后重新编译。
make
make install
vim /etc/profile.d/mysql.sh export path=$path:/usr/local/mysql/bin #加入此内容 . /etc/profile.d/mysql.sh #重新加载,使其生效,必须使.sh结尾,否则仅仅当前会话生效。
chown -r mysql.mysql /usr/local/mysql #设置属主和数组,方便写入配置文件
cd /usr/local/mysql cp support-files/my-large.cnf /etc/my.cnf #添加配置文件,并且在[mysqld]中加入下面三行配置信息 "datadir=/data/mysql/ innodb_file_per_table=on skip_name_resolve=on" scripts/mysql_install_db --user=mysql --datadir=/data/mysql #注意:此初始化脚本必须在/usrl/local/mysql这个目录中执行,否则会报错。
初始化后,数据目录会有一些原始数据
ls /data/mysql/
aria_log.00000001 ib_logfile0 mysql-bin.000001 mysql-bin.state
aria_log_control ib_logfile1 mysql-bin.000002 performance_schema
ibdata1 mysql mysql-bin.index test
cp support-files/mysql.server /etc/init.d/mysqld chmod +x /etc/init.d/mysqld #给脚本增加执行权限 chkconfig mysqld on #加入开机启动项
/usr/local/mysql/bin/mysql_secure_installation
#此步骤会设置root密码、禁止root远程登录、移除一名用户,删除测试数据库,并且重新加载授权表。根据自己喜好选择即可。
ps:当mariadb启动时,才开始进行此操作。
[root@mycentos ~]# mysql -uroot -p #登录命令,以root用户登录,密码为上一步操作所设置的。 enter password: welcome to the mariadb monitor. commands end with ; or \g. your mariadb connection id is 15 server version: 10.0.13-mariadb-log source distribution #此处为mariadb的版本 copyright (c) 2000, 2014, oracle, skysql ab and others. type 'help;' or '\h' for help. type '\c' to clear the current input statement. mariadb [(none)]> #已经进入数据库,完成编译安装!!!
如对本文有疑问, 点击进行留言回复!!
项目实战: CMDB自动化资产扫描(搞懂这个项目 算你没白学运维)
MySQL中建表时可空(NULL)和非空(NOT NULL)的用法详解
SSD原理及Pytorch代码解读——网络架构(二):特征提取网络及总体计算过程
网友评论