zoukankan      html  css  js  c++  java
  • Linux安装MySQL全过程

    操作系统:CentOS 7.2  64位

    mySQL版本:mysql-5.6.35

    安装过程:

    (1)首先从mysql官网下载 MySQL Community Server 安装包。

    选择对应的版本(32位或者64位):

    本文以64位安装包为例! MySQL-5.6.35-1.linux_glibc2.5.x86_64.rpm-bundle.tar

    (2)解压安装包:

    tar  -xvf  MySQL-5.6.35-1.linux_glibc2.5.x86_64.rpm-bundle.tar

    查看解压之后的文件:

    MySQL-server-5.6.35-1.linux_glibc2.5.x86_64.rpm
    MySQL-client-5.6.35-1.linux_glibc2.5.x86_64.rpm      

    MySQL-shared-5.6.35-1.linux_glibc2.5.x86_64.rpm
    MySQL-devel-5.6.35-1.linux_glibc2.5.x86_64.rpm       

    MySQL-shared-compat-5.6.35-1.linux_glibc2.5.x86_64.rpm
    MySQL-embedded-5.6.35-1.linux_glibc2.5.x86_64.rpm    

    MySQL-test-5.6.35-1.linux_glibc2.5.x86_64.rpm

    其中server和client就是我们需要安装的rpm包!

    (3)安装之前的清理工作

    系统已经安装了其他版本的mysql-libs包和mysql数据库文件导致不兼容。同过以下命令清除:

    yum remove mysql-libs

    然后,还要详细检查卸载MySQL安装的所有文件,否则在后续安装发生各种错误:参见 CentOS下MySQL的彻底卸载

    (4)安装mysql-server

    rpm -ivh  MySQL-server-5.6.35-1.linux_glibc2.5.x86_64.rpm --nosignature  

    注意:如果报如下错误,需要加上 --nosignature  

    warning: MySQL-server-5.6.35-1.linux_glibc2.5.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY

    如果没有报错,可以不用加 --nosignature

    (5)安装mysql-client

    rpm -ivh  MySQL-client-5.6.35-1.linux_glibc2.5.x86_64.rpm   --nosignature   (同上)

    (6)运行服务

    service mysql start 

    (7)设置mysql的 root 用户密码

    首先关掉mysql服务:/etc/init.d/mysql stop

    安全模式启动mysql:mysqld_safe --skip-grant-tables &   (&,表示在后台运行)

    依次输入下面的命令:

    # mysql
    mysql> use mysql;
    mysql> UPDATE user SET password=password("123456") WHERE user='root';   
    mysql> flush privileges;
    mysql> exit; 

    ##其中的密码值就是root用户的登录密码。                        
    ##本来mysql是不分大小写的,但是这个是修改的mysql中的mysql数据库的具体的值,要注意到。

    (8)使用 root 用户 登录mysql,需要输入密码!

    mysql -u root -p

    第一次登录之后需要更改root用户的密码,不然任何操作都会报错: 

    ERROR 1820 (HY000): You must SET PASSWORD before executing this statement 

    使用下面命令修改密码:

    mysql> set password=PASSWORD('123456');  

    然后创建一个mysql用户:

    mysql> CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword';

    其中 myuser是将要创建的用户名,mypassword是对应的登录密码。

    运行下列命令,验证帐号是否创建成功​:
    mysql> SELECT host, user, password FROM mysql.user WHERE user='myuser';

    (9)赋予MySQL用户权限

    一个新建的MySQL用户没有任何访问权限,这就意味着你不能在MySQL数据库中进行任何操作。你得赋予用户必要的权限。以下是一些可用的权限:

    ●ALL:所有可用的权限

    ●CREATE:创建库、表和索引

    ●LOCK_TABLES:锁定表

    ●ALTER:修改表

    ●DELETE:删除表

    ●INSERT:插入表或列

    ●SELECT:检索表或列的数据

    ●CREATE_VIEW:创建视图

    ●SHOW_DATABASES:列出数据库

    ●DROP:删除库、表和视图

    运行以下命令赋予"myuser"用户特定权限。

    例如,为所有数据库/表赋予 CREATE 和 INSERT 权限:

    mysql> GRANT CREATE, INSERT ON *.* TO 'myuser'@'localhost';


    验证给用户赋予的全权限:

    mysql> SHOW GRANTS FOR 'myuser'@'localhost';

    将全部的权限赋予所有数据库/表:

    mysql> GRANT ALL ON *.* TO 'myuser'@'localhost';

    创建和设置一个MySQL用户最后的一个重要步骤:

    mysql> FLUSH PRIVILEGES;

    如此一来更改便生效了。

    (具体参见:http://blog.sina.com.cn/s/blog_c2ab3e4b0102vox3.html

    (10)赋予用户远程登录mysql的权限

    MySQL默认root用户只能本地访问,不能远程连接管理mysql数据库Linux如何开启mysql远程连接?设置步骤如下:
    首先需要通过root用户登录mysql。

    然后为myuser用户设置远程登录的权限。

    mysql> GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'  IDENTIFIED BY  'mypassword'  WITH GRANT OPTION;

    这条命令是授与myuser用户从任何其它主机发起的访问(通配符%),密码是mypassword。

    然后执行下面的命令使更改生效:

    mysql> FLUSH PRIVILEGES;

    至此,linux上面安装mysql的全过程完毕!

    参考:
     
    Linux下的tar压缩解压缩命令详解      http://www.cnblogs.com/qq78292959/archive/2011/07/06/2099427.html

    linux搭建C开发环境        http://www.cnblogs.com/mingforyou/p/4118066.html
     
    CentOS7安装MySQL冲突和问题解决小结        http://blog.csdn.net/typa01_kk/article/details/49059729
     
    Linux下修改Mysql的用户(root)的密码        http://www.cnblogs.com/daizhuacai/archive/2013/01/17/2865138.html
     

    如何通过Linux命令行创建和设置一个MySQL用户    http://blog.sina.com.cn/s/blog_c2ab3e4b0102vox3.html

  • 相关阅读:
    jQuery-1.9.1源码分析系列(九) CSS操作
    jQuery-1.9.1源码分析系列(八) 属性操作
    jQuery-1.9.1源码分析系列(七) 钩子(hooks)机制及浏览器兼容续
    由一次虚拟内存耗尽看32bits elf在x86_64下运行方式及地址空间布局
    关于TCP关闭想到的一些问题
    pure virtual method called的一种情况
    linux下内存分配时overcommit使用
    gcc对C++局部静态变量初始化相关
    为什么cat binary之后可能出现乱码
    gcc的模版匹配及其它
  • 原文地址:https://www.cnblogs.com/javaboy2018/p/8729148.html
Copyright © 2011-2022 走看看