zoukankan      html  css  js  c++  java
  • linux安装mysql

    1.下载MySQL
    我下载的版本:mysql-5.6.4.tar.gz

    2.安装之前先卸载CentOS自带的MySQL
    [root@localhost ~]# yum remove mysql

    3.编译安装Cmake
    下载cmake源码包:http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz

    从共享目录移至usr目录
    [root@localhost ~]# mv /home/user/cmake-2.8.4.tar.gz /usr/cmake-2.8.4.tar.gz
    [root@localhost ~]# cd /usr

    解压并安装cmake
    [root@localhost usr]# tar xzvf cmake-2.8.4.tar.gz
    [root@localhost usr]# cd cmake-2.8.4
    [root@localhost cmake-2.8.4]# ./bootstrap

    ---------------------------------------------
    CMake 2.8.4, Copyright 2000-2009 Kitware, Inc.
    ---------------------------------------------
    Error when bootstrapping CMake:
    Cannot find appropriate C compiler on this system.
    Please specify one using environment variable CC.
    See cmake_bootstrap.log for compilers attempted.

    ---------------------------------------------
    Log of errors: /usr/local/src/cmake-2.8.4/Bootstrap.cmk/cmake_bootstrap.log
    ---------------------------------------------
    报错:缺少C的编译器
    解决办法:安装gcc编译器
    [root@localhost ~]# yum install gcc

    继续安装Cmake
    [root@localhost cmake-2.8.4]# ./bootstrap

    ---------------------------------------------
    CMake 2.8.4, Copyright 2000-2009 Kitware, Inc.
    C compiler on this system is: cc
    ---------------------------------------------
    Error when bootstrapping CMake:
    Cannot find appropriate C++ compiler on this system.
    Please specify one using environment variable CXX.
    See cmake_bootstrap.log for compilers attempted.
    ---------------------------------------------
    Log of errors: /usr/local/src/cmake-2.8.4/Bootstrap.cmk/cmake_bootstrap.log
    ---------------------------------------------
    报错:缺少C++编译器 
    解决办法:安装gcc-c++编译器
    [root@localhost ~]# yum install gcc-c++

    再次安装
    [root@localhost cmake-2.8.4]# ./bootstrap 
    没有报错,编译安装
    [root@localhost cmake-2.8.4]# gmake
    [root@localhost cmake-2.8.4]# gmake install

    4.正式开始安装MySQL
    添加MySQL用户和用户组
    [root@localhost ~]# groupadd mysql
    [root@localhost ~]# useradd -g mysql mysql

    MySQL源码包从共享文件夹移至/usr并解压
    [root@localhost ~]# mv /home/user/mysql-5.6.4.tar.gz /usr/mysql-5.6.4.tar.gz
    [root@localhost usr]# tar xzvf mysql-5.6.4.tar.gz
    [root@localhost usr]# cd mysql-5.6.4

    Cmake运行
    [root@localhost mysql-5.5.22]# cmake .

    开始编译安装
    [root@localhost mysql-5.5.22]# make && make install

    进入安装目录,将程序二进制的所有权改为root,数据目录的说有权改为mysql用户,更新授权表
    [root@localhost mysql-5.5.22]# cd /usr/local/mysql/
    [root@localhost mysql]# chown -R root .
    [root@localhost mysql]# chown -R mysql .
    [root@localhost mysql]# chgrp -R mysql .
    [root@localhost mysql]# scripts/mysql_install_db --user=mysql

    安全启动MySQL(默认密码为空)
    [root@localhost mysql]# ./bin/mysqld_safe --user=mysql&

    source /etc/profile

    报错:

    120908 00:16:25 mysqld_safe Logging to '/usr/local/mysql/data/CentOS.err'.
    120908 00:16:26 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data

    解决方法:
    [root@CentOS ~]# cd /usr/local/mysql/data

    [root@CentOS data]# ls -l
    总用量 29744
    -rw-rw---- 1 mysql root 1585 9月 8 00:16 CentOS.err
    -rw-rw---- 1 mysql mysql 6 9月 8 00:16 CentOS.pid
    -rw-rw---- 1 mysql mysql 18874368 9月 8 00:16 ibdata1
    -rw-rw---- 1 mysql mysql 5242880 9月 8 00:16 ib_logfile0
    -rw-rw---- 1 mysql mysql 5242880 9月 8 00:16 ib_logfile1
    drwxr-xr-x 2 mysql mysql 4096 9月 8 00:14 mysql
    -rw-rw---- 1 mysql mysql 27293 9月 8 00:14 mysql-bin.000001
    -rw-rw---- 1 mysql mysql 1031892 9月 8 00:14 mysql-bin.000002
    -rw-rw---- 1 mysql mysql 107 9月 8 00:16 mysql-bin.000003
    -rw-rw---- 1 mysql mysql 57 9月 8 00:16 mysql-bin.index
    drwx------ 2 mysql mysql 4096 9月 8 00:14 performance_schema
    drwxr-xr-x 2 mysql mysql 4096 9月 8 00:08 test


    [root@CentOS data]# chgrp -R mysql CentOS.err
    [root@CentOS data]# ls -l
    总用量 29736
    -rw-rw---- 1 mysql mysql 1585 9月 8 00:16 CentOS.err
    -rw-rw---- 1 mysql mysql 6 9月 8 00:16 CentOS.pid
    -rw-rw---- 1 mysql mysql 18874368 9月 8 00:16 ibdata1
    -rw-rw---- 1 mysql mysql 5242880 9月 8 00:16 ib_logfile0
    -rw-rw---- 1 mysql mysql 5242880 9月 8 00:16 ib_logfile1
    drwxr-xr-x 2 mysql mysql 4096 9月 8 00:14 mysql
    -rw-rw---- 1 mysql mysql 27293 9月 8 00:14 mysql-bin.000001
    -rw-rw---- 1 mysql mysql 1031892 9月 8 00:14 mysql-bin.000002
    -rw-rw---- 1 mysql mysql 107 9月 8 00:16 mysql-bin.000003
    -rw-rw---- 1 mysql mysql 57 9月 8 00:16 mysql-bin.index
    drwx------ 2 mysql mysql 4096 9月 8 00:14 performance_schema
    drwxr-xr-x 2 mysql mysql 4096 9月 8 00:08 test

    配置用户
    MySQL启动成功后,root默认没有密码,我们需要设置root密码。
    设置之前,我们需要先设置PATH,要不不能直接调用mysql
    修改/etc/profile文件,在文件末尾添加

    [root@localhost mysql]#vi /etc/profile

    复制代码代码如下:
    PATH=/usr/local/mysql/bin:$PATH
    export PATH

    关闭文件,运行下面的命令,让配置立即生效

    复制代码代码如下:
    [root@localhost mysql]# source /etc/profile


    连接本机MySQL
    [root@localhost mysql]#mysql –u root –p
    提示输入password,默认为空,按Enter即可

    断开连接
    mysql>exit;

    为root账户设置密码
    [root@localhost mysql]# mysqladmin -u root password 123456
    Enter Password:123456

    设置选项文件,将配置文件拷贝到/etc下
    [root@localhost mysql]# cp support-files/my-medium.cnf /etc/mysql.cnf

    设置开机自启动
    [root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysql
    [root@localhost mysql]# chmod +x /etc/init.d/mysql 
    [root@localhost mysql]# chkconfig mysql on
     

    通过服务来启动和关闭Mysql
    [root@localhost ~]# service mysql start
    [root@localhost ~]# service mysql stop

    5.安装设置完毕,之后使用只需启动-连接-断开-关闭,命令如下:
    [root@CentOS mysql]# service mysql start
    Starting MySQL.. [确定]


    [root@CentOS mysql]# mysql -u root -p
    Enter password:
    Welcome to the MySQL monitor. Commands end with ; or g.
    Your MySQL connection id is 1
    Server version: 5.5.22 Source distribution

    Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.

    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

    mysql> show databases;
    +--------------------+
    | Database |
    +--------------------+
    | information_schema |
    | mysql |
    | performance_schema |
    | test |
    +--------------------+
    4 rows in set (0.07 sec)

    mysql> exit;
    Bye
    [root@CentOS mysql]# service mysql stop
    Shutting down MySQL. [确定]

    6.其它:
    查看进程命令 ps –ef|grep mysqld
    kill进程命令 kill –9 进程号

      


    编译mysql出现CMake Error at cmake/readline.cmake:83 (MESSAGE) 

    -- Could NOT find Curses  (missing:  CURSES_LIBRARY CURSES_INCLUDE_PATH)
    CMake Error at cmake/readline.cmake:83 (MESSAGE):
      Curses library not found.  Please install appropriate package,
     
    remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel.
    Call Stack (most recent call first):
      cmake/readline.cmake:127 (FIND_CURSES)
      cmake/readline.cmake:217 (MYSQL_USE_BUNDLED_LIBEDIT)
      CMakeLists.txt:257 (MYSQL_CHECK_READLINE) 
     
    -- Configuring incomplete, errors occurred!
     
    该报错原因是未安装ncurses-devel,运行下面命令
    第一步:安装
    #yum -y install ncurses-devel
     
    第二步:删除CMakeCache.txt
    通过find命令找到所有CMakeCache.txt文档的位置
    #find / -name CMakeCache.txt
    然后全部删除:
    # rm -rf /usr/local/src/cmake-2.8.6/Tests/Complex/Cache/CMakeCache.txt
    # rm -rf /usr/local/src/cmake-2.8.6/Tests/ComplexOneConfig/Cache/CMakeCache.txt
    # rm -rf /usr/local/src/cmake-2.8.6/Tests/ComplexRelativePaths/Cache/CMakeCache.txt
    # rm -rf /usr/local/src/mysql-5.5.18/CMakeCache.txt


    解决方法: 
     
    1. 改表法。 
     
    可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"
     
    mysql -u root -pvmwaremysql>use mysql;   www.2cto.com  
     
    mysql>update user set host = '%' where user = 'root'; 
     
    mysql>select host, user from user; 
     
    2. 授权法。 
     
    例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。 
     
    GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
     
    FLUSH   PRIVILEGES; 
     
    如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码 
     
    GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;   www.2cto.com  
     
    FLUSH   PRIVILEGES; 
     
    如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器的dk数据库,并使用mypassword作为密码 
     
    GRANT ALL PRIVILEGES ON dk.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION; 
     
    FLUSH   PRIVILEGES;

  • 相关阅读:
    MinGW GCC 7.1.0 2017年6月份出炉啦
    java面试题-框架篇九
    spring-AOP原理
    spring的bean管理(注解)
    23种设计模式(1)-单例模式
    SSH框架面试题集锦
    JQuery基础
    实现用户注册
    spring与hibernate的整合
    spring-IOC理解1
  • 原文地址:https://www.cnblogs.com/chenzhao/p/3902368.html
Copyright © 2011-2022 走看看