• MySQL入门(四)


         我好久没有写这个系列了,也确实不知道写什么。回首我学习数据库的路,最开始搞Oracle的时候其实没有搞懂Oracle,也不知道学了什么,后来学习MySQL尤其是InnoDB才大概入了门了。我最开始学习MySQL的时候直接看的是《高性能MySQL》,真的是写的比较深,学了好多好多回才知道了。不过不可否认这本书能用来入门,但是需要多看好多回。

         我加了几个群,但是发现很多人总喜欢问:MySQL怎么装,我为什么改了密码没办法登录了,基本都是些可以说是很入门的问题。那我就想说说这些问题。

         一 安装

            MySQL安装基本分为三种办法:RPM安装,通用二进制包和源码编译安装。

            RPM安装

            RPM安装很简单,只需要从mysql.com上下载集成包,名字一般为:MySQL-[version]-[OS].[platform].rpm-bundle.tar。这里面有好几个rpm包,下面图中是5.5的:

          只需要安装client和server就可以了。安装好之后就可以执行mysql命令了。

          这样安装以后会把数据目录放到/var/lib/mysql下面,只需要根据自己的需要迁移就可以了。

          通用二进制包安装

          通用二进制包我认为就是提前编译好的mysql,压缩包解压以后做一个软连接就可以了:

          

    ln -s /root/software/mysql-5.5.47-linux2.6-x86_64 /usr/local/mysql

          这样之后,修改一下环境变量,把这个路径放到PATH里就可以了。

          源码编译安装

         源码编译安装速度比较慢,但是有个好处就是可以定制功能,还能把tcmalloc这种神器编译到里面。

       

    cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1

           这样就可以了,还有多少选项,可以好好利用搜索引擎。如果是mysql5.7的编译,还需要使用boost,下载带boost的包,编译的时候使用这个命令就可以:

           

    cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 -DCMAKE_EXE_LINKER_FLAGS="-ltcmalloc" -DWITH_BOOST=./boost

          如果cmake没有问题,就可以直接执行make && make install,执行结束后,MySQL就安装好了。

          

          到这里安装就完全结束了,至于配置,我就不想写了,太没意思了。

          下面说说用户吧。MySQL大概有两种常用的登录方式:Unix套接字,TCP方式。

          Unix套接字主要用于服务器本地登录,TCP登录一般用于远程登录。

          怎么说呢?root@localhost和root@'%'实际上可以认为是两个不同的用户,虽然都是一个用户,但是可以分配不同的权限,不同的密码。因此在改密码的时候,一定要注意用户的登录方式。比如有些同仁刚刚学习的时候,总会搞不清楚这个,改了密码之后就登录不上去了。

         所以建议创建用户的时候,使用grant all on *.* to 'root'@'%' identified by 'root';这样的语句,这样比较简单的看出来授权给什么用户了。

         今天就写到这里把。

  • 相关阅读:
    intellij idea的Maven项目运行报程序包找不到的错误
    修改Maven项目默认JDK版本
    Android学习_MVC与Adapter
    Android学习_Selector
    Android学习_内容提示器
    Android学习_Fragment
    Android学习_服务
    Android学习_数据持久化
    Android学习_广播接收器
    Git与Repo 的使用
  • 原文地址:https://www.cnblogs.com/wingsless/p/5521482.html
Copyright © 2020-2023  润新知