centos7.3上二进制安装mariadb-10.2.8-linux-x86_64

1、查看是否安装mariadb

        rpm -qa mariadb*

        如果已经安装就卸载。

2、下载mariadb最新版本

        yum info mariadb

        官网地址:http://mariadb.org  

    下载:mariadb-10.2.8-linux-x86_64.tar.gz

3、创建mysql用户

     rpm 安装时会自动创建mysql用户,这里需要手动创建

      useradd -d /app/mysqldb   -r -m -s /sbin/nologin mysql

            -d 设置家目录;家目录用来存放数据库

            -r 创建系统用户

            -m  自己改权限

            -s  设置登录方式

4、任意目录下导入文件,本实验在/root

         rz   导入文件    

        解压 tar xvf mariadb-10.2.8-linux-x86_64.tar.gz -C /usr/local/

         解压到固定目录。这是在配置文件中已经写固定了。

5、cd /usr/local/ 

     解压后的文件夹名必须为mysql,(1)可以改名(2)可以创建软连接

  ln -s mariadb-10.2.8-linux-x86_64/ mysql  创建软连接

6、复制数据文件

    复制数据文件到指定目录

cd /usr/local/mysql/

mkdir/etc/mysql/

     cp support-files/my-huge.cnf  /etc/mysql/my.cnf (必须为这个名)

7、修改配置文件

    vim /etc/mysql/my.cnf

    添加这三条 

    [mysqld]  

    datadir    =/app/mysqldb   #数据库存放位置

    innodb_file_per_table = on   #一张表一个数据库

    skip_name_resolve = on   #开启跳过名字解析

8、创建数据库

cd /usr/local/mysql

 只能在这个目录下执行命令,因为在编译文件时已经写固定。

scripts/mysql_install_db  --user=mysql --datadir=/app/mysqldb  执行脚本,创建数据库,指定用户mysql,指定数据库目录/app/mysqldb

 ls /app/mysqldb    生成数据

9、复制脚本,启动服务。

        cp  support-files/mysql.server  /etc/init.d/mysqld

        chkconfig--add mysqld    添加该服务

         chkconfig --list mysqld            查看是否添加成功

        service mysqld start  启动服务失败

10、创建日志文件

        mkdir /var/log/mariadb/

 chown mysql /var/log/mariadb/  修改权限

       service  mysqld start   启动服务成功

11、方便使用命令:修改PATH路径        

         vim /etc/profile.d/tesh.sh

                PATH=/usr/local/mysql/bin:$PATH

      执行该文件 source  /etc/profile.d/tesh.sh

       在命令行查看是否修改成功       

        echo $PATH

/usr/local/mysql/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

12、因为mysql数据库默认匿名登录,且登录没有密码,执行一下安全脚本

        /usr/local/mysql/bin/mysql_secure_installation

      因为前面PATH变量已经设置该文件的路径,直接在命令行执行该脚本

        mysql_secure_installation

        Enter current password for root (enter for none):(输入当前root的密码,咩有直接回车)

        Set root password? [Y/n] y     是否设置root密码,选择y       

        New password: 

        Re-enter new password:       输入两次密码

        Remove anonymous users? [Y/n] y      是否移除匿名登录,选择y

        Disallow root login remotely? [Y/n] n      是否允许root远程登录,选择n,表示允许root远程登录

        Remove test database and access to it? [Y/n] y    是否移除test 数据库,这个数据库是空的,没有意义,直接删除。选择y

        Reload privilege tables now? [Y/n] y     是否前面的设置生效,修改等于提交,选择y

13、设置密码后下次登录方式

        mysql  -uroot -p   (指定登录用户root,-p输入密码)

   Enter password: