MySQL在过去由于性能高、成本低、可靠性好,已经成为最流行的开源数据库,因此被广泛地应用于中小型网站开发。随着MySQL的不断成熟,它也逐渐被应用于更多大规模网站和应用,比如维基百科、谷歌(Google)、脸书(Facebook)、淘宝网等网站都使用了MySQL来提供数据持久化服务。

    甲骨文公司收购后昇阳微系统公司,大幅调涨MySQL商业版的售价,且甲骨文公司不再支持另一个自由软件项目的发展,因此导致自由软件社区对于Oracle是否还会持续支持MySQL社区版(MySQL的各个发行版本中唯一免费的版本)有所担忧,MySQL的创始人麦克尔·维德纽斯以MySQL为基础,成立分支计划MariaDB(以他女儿的名字命名的数据库)。有许多原来使用MySQL数据库的公司(例如:维基百科)已经陆续完成了从MySQL数据库到MariaDB数据库的迁移。

    1. 安装和配置

      • 刚才说过,MySQL有一个分支版本名叫MariaDB,该数据库旨在继续保持MySQL数据库在下开源。如果要使用MariaDB作为MySQL的替代品,可以使用下面的命令进行安装。

      • 如果要安装官方版本的MySQL,可以在MySQL官方网站下载安装文件。首先在下载页面中选择平台和版本,然后找到对应的下载链接。下面以MySQL 5.7.26版本和Red Hat Enterprise Linux为例,直接下载包含所有安装文件的归档文件,解归档之后通过包管理工具进行安装。

        1. tar -xvf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar

        如果系统上有MariaDB相关的文件,需要先移除MariaDB相关的文件。

        1. yum list installed | grep mariadb | awk '{print $1}' | xargs yum erase -y

        接下来可以按照如下所示的顺序用RPM(Redhat Package Manager)工具安装MySQL。

        1. rpm -ivh mysql-community-common-5.7.26-1.el7.x86_64.rpm
        2. rpm -ivh mysql-community-libs-5.7.26-1.el7.x86_64.rpm
        3. rpm -ivh mysql-community-libs-compat-5.7.26-1.el7.x86_64.rpm
        4. rpm -ivh mysql-community-devel-5.7.26-1.el7.x86_64.rpm
        5. rpm -ivh mysql-community-client-5.7.26-1.el7.x86_64.rpm
        6. rpm -ivh mysql-community-server-5.7.26-1.el7.x86_64.rpm

        可以使用下面的命令查看已经安装的MySQL相关的包。

        1. MySQL的配置文件在/etc目录下,名为,默认的配置文件内容如下所示。如果对这个文件不理解并没有关系,什么时候用到这个配置文件什么时候再了解它就行了。

          1. cat /etc/my.cnf
        2. 启动MySQL服务。

          可以使用下面的命令来启动MySQL。

          1. service mysqld start

          在CentOS 7中,更推荐使用下面的命令来启动MySQL。

          1. systemctl start mysqld

          启动MySQL成功后,可以通过下面的命令来检查网络端口使用情况,MySQL默认使用3306端口。

          1. netstat -ntlp | grep mysql

          也可以使用下面的命令查找是否有名为mysqld的进程。

          1. pgrep mysqld
        3. 使用MySQL客户端工具连接服务器。

          命令行工具:

          1. mysql -u root -p

          上面的命令会查看MySQL的日志带有password的行,在显示的结果中后面的部分就是默认设置的初始密码。

          修改超级管理员(root)的访问口令为123456

          1. set global validate_password_policy=0;
          2. set global validate_password_length=6;
          3. alter user 'root'@'localhost' identified by '123456';

          再次使用客户端工具连接MySQL服务器时,就可以使用新设置的口令了。在实际开发中,为了方便用户操作,可以选择图形化的客户端工具来连接MySQL服务器,包括:

          • Navicat for MySQL(界面简单,功能直观)
          • SQLyog for MySQL(强大的MySQL数据库管理员工具)
      • 常用命令。

        • 查看服务器版本。

          1. select version();
        • 查看所有数据库。

          1. show databases;
        • 切换到指定数据库。

          1. use mysql;
        • 查看数据库下所有表。

          1. show tables;