Linux下源码包安装Mysql

一、检查是否存在mysql

rpm -qa | grep mysql

卸载


- 普通删除模式
rpm -e mysql_libs
- 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除
rpm -e --nodeps mysql_libs

安装mysql

一、安装编译代码需要的包
      yum -y install make gcc-c++ cmake bison-devel  ncurses-devel
二、解压
      tar xvf mysql-xxx.tar.gz
三、进入mysql目录
      编译安装【源码=》编译】
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
四、编译并安装
      make && make install
五、配置mysql(设置权限)
      查看是否有mysql用户及用户组
             cat /etc/passwd 查看用户列表
             cat /etc/group  查看用户组列表

      没有则创建
             groupadd mysql
             useradd -g mysql mysql

      修改/usr/local/mysql权限
              chown -R mysql:mysql /usr/local/mysql
      初始化配置,进入安装路径(在执行下面的指令),执行初始化配置脚本,创建系统自带的数据库和表
  • 进入目录
cd /usr/local/mysql
  • 执行命令

    scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
    //如果出现以下异常:
    // FATAL ERROR: please install the following Perl modules before executing // 
    // /usr/local/mysql/scripts/mysql_install_db:Data::Dumpe
    解决方法 :安装autoconf库
    命令:yum-y install autoconf 
    再执行
     
        注意:在启动服务时,linux会安装一定次序搜索my.cnf,先找etc目录下,找不到则会搜索"$basedir/my.cnf"再找
        /usr/local/mysql/my.cnf下,为避免后续干扰修改etc下(etc下有my.cnf情况下)
        mv /etc/my.cnf /etc/my.cnf.bak
    五、启动mysql

    添加服务,拷贝服务脚本到init.d目录,并设置开机启动
    [注意在 /usr/local/mysql 下执行]
    cp support-files/mysql.server /etc/init.d/mysql
    chkconfig mysql on(自动启动)
    service mysql start --启动MySQL

        执行下面的命令修改root密码(mysql初始密码为空)
    cd /usr/local/mysql/bin
    ./mysql -u root  -p
     mysql> SET PASSWORD = PASSWORD('密码');
    quit;退出
    

下面是关于安装后远程访问

  • 在安装Mysql数据库的主机上登录root用户:
mysql -u root -p
  • 执行如下命令
use mysq;
select host from user where user='root';
//或者
select Host,User from user;

![image](https://yqfile.alicdn.com/ca038fb6a46f9bd0582807575777b8dab14b3c2a.png)

//将Host设置为通配符%或者指定ip

update user set host = '%' where user ='root'

//Host修改完成,刷新立即生效

flush privilegs;
上一篇:(四):C++分布式实时应用框架——状态中心模块


下一篇:[复变函数]第06堂课 2.1 解析函数的概念与 Cauchy-Riemann 方程 (续)