菜鸟的Linux历程-mysql服务搭建与知识摘要

安装过程


在安装mysql之前,先对mysql做一个知识补充。mysql是一种开放源代码的关系数据库管理系统,采用的是客户机/服务器工作模式,是一个多用户、多线程的SQL数据库。


需要掌握的基本概念:

  • 数据(data):数据库中存储的基本对象
  • 数据库(DB):存放数据的仓库。
  • 数据库管理系统(DBMS):是位于用户和操作系统之间的一 层数据管理软件,有数据定义功能,数据操纵功能,数据库的运行管理,数据库的建立维护功能。
  • 数据库系统(DBS):一般由数据库,数据库管理系统,应用系统,数据库管理员和用户构成。
  • 数据库系统视图如下:
|------------------------------|
 |--------用户------用户-------|
|------------------------------|
   --         --          --
    -         --          -
    |-------------------|
    |     应用系统       |
    |-------------------|
              --
              --
    |-------------------|
    |   应用开发工具      |
    |-------------------|
              --
              --
    |-------------------|
    |   数据库管理系统    |
    |-------------------|/----------|_|
              --                    |D|
              --                    |B|
    |-------------------|           |A|
    |      操作系统      |\----------|-|
    |-------------------|
              --
              --
        |-----------|
        |   D   B   |
        |-----------|

安装mysql:

  • 安装ncurses
    yum -y install ncurses*
    //我的源码包存放位置为/lamp/sourcecode

    cd /lamp/sourcecode

    //解压源码包后,进入解压文件夹,编译:
    ./configure --with-shared --without-debug --without-ada --enable-overwrite

    make && make install
  • 添加mysql的进程执行者:
    useradd mysql
  • 解压mysql的源码包后,进入解压文件夹,编译:
    ./configure --prefix=/usr/local/mysql --without-debug --enable-thread-safe-client --with-pthread --enable-assembler --enable-profiling --with-mysqld-ldflags=-all-static --with-client-ldflags=-all-static --with-extra-charsets=all --with-plugins=all --with-mysqld-user=mysqld --without-embedded-server --with-server-suffix=-community --with-unix-socket-path=/tmp/mysql.sock

    make && make install

  • 复制配置文件到etc下:
    cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf
    注:在mysql安装完成后,实际将生成多种不同的配置文件存在于/user/local/mysql/share/mysql下,由于这是测试环境,我选择了my-medium.cnf,关于mysql配置文件的内容,后文将做详细说明。
  • 完成后修改配置文件:
//添加客户端字符集
    [client]
    default-character-set=utf8

//添加服务端字符集
    [mysqld]
    character-set-server=utf8
  • 修改mysql用户对mysql目录的权限:
    setfacl -m u:mysql:rwx -R /user/local/mysql
    setfacl -m d:u:mysql:rwx -R /user/local/mysql
  • 创建数据库授权表:
    /user/local/mysql/bin/mysql_install_db --user=mysql
    //将创建mysql数据库和test数据库。
    //注:关于mysql数据库授权的内容,将在后续整理分享给大家。
  • 用源码包的方式启动mysql服务:
    /usr/local/mysql/bin/mysqld_safe --user=mysql &
    以mysql的进程执行者身份启动mysql服务。
    问题:如果去掉“&”,在执行到这一步的时候,mysql服务正常运行,程序占据了控制台无法中断和退出,需要新开一个控制台。

  • 登录mysql:
    起始时,登录mysql服务的用户为root,密码默认为空
    /usr/local/mysql/bin/mysql -uroot password
  • 密码修改:
    /usr/local/mysql/bin/mysql -uroot password yourpassword
重新登录就需要输入密码才能登录了。

到此为止,整个mysql5的安装已经完成。接下来,我们需要了解一下mysql的一些重要文件。通过了解这些文件,我们将对整个安装过程的“用户”和“进程执行者”理解更加深刻。


重要文件夹:

操作数据库的所有命令存放的文件夹:
/usr/local/mysql/bin/
在这里面,有几个常用的命令:

    /usr/local/mysql/bin/mysql_safe --user=mysql &
    //开启mysql服务
    /usr/local/mysql/bin/mysqladmin shutdown    
    //正确关闭mysql的方式
    /usr/local/mysql/bin/mysqladmin status  
    //查看mysql的状态

mysql的配置文件:

mysql安装完成会在/usr/local/mysql/share/mysql/(根据自己指定的安装目录而定)下生成多个配置文件

  • my-small.cnf:为运行在小内存(小于64M)主机上的数据库设计的。不时的占用系统资源。

  • my-medium.cnf:为运行在小内存(32M至64M)主机上的数据设计的。但是此时的mysql起到重要作用,如常见的数据库和web服务在同一主机上。

  • my-large.cnf:专门为mysql数据库主机而设计的。这时的主机为mysql服务提供多达512M的内存。

  • my-huge.cnf:为企业级的mysql数据库服务而设计的。需要专门的服务器,为mysql服务分配的内存超过1G。

  • my-innodb-heavy-4G.cnf:为使用innoDB引擎的mysql数据库设计的。

    这些配置文件可以根据实际需求进行选择,将需要的配置文件改名为my.cnf并保存至/etc下,该文件则对全局起作用了。也可以复制到单独的数据库文件存储目录,并改名为my.cnf,则只对该服务器起作用。还可以保存到一个用户目录下,更名为my.cnf,此时就只对该用户生效。

这里我挑选对my-medium.cnf进行深入学习:
my-medium.cnf配置文件由很多配置字段组成,每一个配置段都有一个名称,由方括号包围,与某一应用程序对应:
- [client]段:包含的配置内容传递给所有客户端。
- [mysqld]段:包含的是mysql服务器配置的指令。
- [mysql]段:指定启动mysql服务的配置。

有关mysql的内容就介绍到这,有关数据库管理和数据库优化的内容将继续分享给大家。不对的地方,欢迎大家留言指正。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值