zoukankan      html  css  js  c++  java
  • MySQL数据库编译过程

    编译安装MySQL

    1. 准备工作 
      卸载rpm方式安装的mysql-server、mysql 
      安装ncurses-devel和cmake包 
      yum -y install ncurses-devel cmake 
      tar xf cmake-2.8.6.tar.gz -C /usr/src 
      cd /usr/src/cmake-2.8.6/ 
      ./configure && gmake && gmake install 
      这个过程需要时间
    2. 源码编译及安装 
      增加程序用户mysql 
      useradd -M -s /sbin/nologin mysql 
      解压mysql-5.5.22.tar.gz 
      tar xf mysql-5.5.22.tar.gz -C /usr/src 
      cmake配置,编译及安装 
      cd /usr/src/mysql-5.5.22/ 
      cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all && make && make install
    3. 安装后的优化操作 
      修改mysql安装目录的属主与属组 
      chown -R mysql:root /usr/local/mysql/ 
      创建修改my.cnf配置文件 
      /bin/cp support-files/my-medium.cnf /etc/ 
      添加系统服务 
      cp support-files/mysql.server /etc/init.d/mysqld 
      chmod +x /etc/init.d/mysqld 
      chkconfig mysqld --add 
      chkconfig mysqld --list 
      添加MySQL命令执行的路径到PATKH环境变量 
      echo "export PATH=PATH 查看环境变量是否添加成功

    更简单的设置方法为用下面命令做软链接:ln -s /usr/local/mysql/bin/* /usr/local/sbin/,把mysql命令说在路径链接到全局路径/usr/local/sbin/的下面。

    执行 mysql_install_db脚本初始化数据库 
    /usr/localmydql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/

    --basedir=/usr/local/mysql为MySQL的安装路径,--datadir为不同的实例数据目录

    启动MySQL服务,并查看运行状态 
    /etc/init.d/mysqld start 
    netstat -anpt |grep :3306 
    设置数据库用户名密码 
    mysqladmin -uroot password '密码'

    MySQL数据库的分类及数据库操作

    数据库简单的分为两种:

    关系型数据库----------->mysql和Oracle 
    非关系型数据库--------->Memcached和Redis 
    消息队列中间件

    什么叫做关系型数据库?SQL数据库

    数据和数据之间是有关系的,通过关系能够将一系列数据都提取出来。

    什么是非关系型数据库?NoSQL数据库(NotonlySQL)

    数据和数据之间没有关系

    关系型数据库MySQL和Oracle有什么区别?

    其实,这两类数据库在使用方式上大体是没有太多的区别。都是基于SQL查询方式的数据库。但是Oracle是闭源的,出了问题有人管,因此,运维并不需要花太多精力在Oracle,在企业里可以学。MySQL是开源的,免费的,自然需要运维来维护的,但是通常来说,真正的数据库维护人员的职位叫做DBA=database administrator,他并不是广泛意义上的运维,只是数据库专业运维。市面上还有一种关系型数据库,叫做Maria DB,他和MySQL有什么关系?MySQL数据库最早是开源的,他和Maria几乎是一样的。

    B/S架构模式与C/S架构模式的区别?

    B/S=====>Web/server 
    用户通过Web浏览器打开输入域名就能够访问服务器Server的方式叫做B/S,用户不需要安装任何东西 
    C/S====>client/Server 
    所谓客户端在用户的电脑里是需要下载并安装的。

     

    MySQL数据表

    数据表以文件的形式展现,MySQL数据表由两部分组成:账户名@登陆IP 
    describe 表名 查看表的字段信息 
    四种对数据表进行SQL语句 
    增:inset into 表名[字段名] values 具体数值 
    删:delete from 表名 where 条件 
    改:update 表名 set 字段=‘数值’ 
    查:select 字段名 from 表名 
    show databases 查看所有的库 
    create database 创建库 
    drop database 删除库 
    show tables 查看所有的表(先切换到这个表) 
    小库其实就是data目录下的子目录,开发管小库叫空间,小库的名字叫做空间名,空间名.表名 
    flush privileges 刷新 立即生效 
    updata 表名 set password=password(‘密码’) where host=‘localhost’修改密码

     

    MySQL用户权限

    grant 用户权限设置 
    grant all on . to '用户名'@'登陆IP' IDENTIFIED BY '密码'(第一个所有的库,第二个所有的表) 
    show grant 查看本地的用户权限 
    show grant for '用户名'@'登陆IP' 查看别人的用户权限 
    revoke 权限类型 on 库名表名 from '用户名'@'登陆IP' 撤销权限 
    %代表任意所有 
    代表任意一个字符 
    192.168.200.% 代表200网段的所有地址 
    192.168.200.
    代表1-9任意一个地址

  • 相关阅读:
    Linux下OpenSSL自签ssl证书
    戌蛤怒触铁铁树
    Python自动化办公-自动化操作Excell-openpyxl
    Python正则表达式
    Django中F查询
    如何知道自家的宽带是多少兆?
    ‘Diango中明明模版的名称写的是对的,但是访问url的时候发现没调用模版’解决方案
    Django中的聚合函数
    Django中的跨关系查询
    【RabbitMQ】零、Windows64位安装
  • 原文地址:https://www.cnblogs.com/heyuanlong/p/9911886.html
Copyright © 2011-2022 走看看