• Mysql (一)Mysql 在Linux系统安装


    引言


    如今由于项目的须要在搭建Mysql的集群,从最简单的開始,先安装一个Mysql 在linux系统下。


    步骤:


    第一步:安装:


    tar mysql-5.5.48-linux2.-x86_64.tar.gz


    Copy到指定的路径下:


    cp mysql-5.5.48-linux2.6-x86_64 /usr/local/mysql -r



    加入系统mysql组合mysql用户:


    运行命令:groupaddmysql和useradd -r -g mysql mysql



    安装数据库:


    进入安装mysql软件文件夹:运行命令 cd/usr/local/mysql

    改动当前文件夹拥有者为mysql用户:运行命令 chown -R mysql:mysql ./

    安装数据库:运行命令 ./scripts/mysql_install_db --user=mysql

    改动当前文件夹拥有者为root用户:运行命令 chown -R root:root ./

    改动当前data文件夹拥有者为mysql用户:运行命令 chown -R mysql:mysql data

    到此数据库安装完成




    启动mysql服务和加入开机启动mysql服务:

    加入开机启动:运行命令cpsupport-files/mysql.server /etc/init.d/mysql,把启动脚本放到开机初始化文件夹

    启动mysql服务:运行命令servicemysql start




    第二步:怎样配置mysql:


    查看咱们的mysql是否启动成功:

     

    输入:ps -ef | grep mysql



    改动mysql的root用户password,root初始password为空的:

    运行命令:./bin/mysqladmin -u root -h localhost.localdomain  password '密码'



    把mysqlclient放到默认路径:

    ln -s/usr/local/mysql/bin/mysql /usr/local/bin/mysql



    注:


    当启动client的时候,报:

    Can't connect tolocal MySQL server through socket '/tmp/mysql.sock' (2)


    解决方法:


    问题。后来查看了一下咱们的。/etc/my.cnf:


    <span style="font-family:KaiTi_GB2312;font-size:18px;">[mysqld]
    datadir=/var/lib/mysql
    socket=/var/lib/mysql/mysql.sock
    user=mysql
    # Disabling symbolic-links is recommended to prevent assorted security risks
    symbolic-links=0
    
    [mysqld_safe]
    log-error=/var/log/mysqld.log
    pid-file=/var/run/mysqld/mysqld.pid
    </span>

    解决方式:


    socket/var/lib/mysql/mysql.sock路径下,这个时候,我们须要将如链接到mysql.socktmp/mysql.sock中就能够了。


    注:事实上,这个问题非常明显了,大家看Socket的參数,在/var/lib/mysql/mysql.sock中。而tcp协议要找的地址为tmp/mysql.sock。所以。我们要不然酱上面的sockket=/tmp/mysql.sock。

    当然我们都知道,事实上,我们仅仅须要软连接到tmp/mysql.sock中就能够了。


    我们採用的方法:



    另外我们解决windows系统连接不上linux系统的mysql的问题:



    这样,我们事实上。我们全部对mysql的登陆,都是在mysql中的mysql库中的user表中进行登陆的。这个表中我们windows连接的时候,是这种'user@host'的,举个简单的样例就是,假设我的电脑的ip为‘192.168.22.28’。那么我发出的连接,就是这种'root@192.168.22.28',这样,因此,我们在改动的时候,host为'%',代表了全部的连接client,这个时候。我们仅仅须要对这个的password进行改动就能够了。


    可是,我在我的Navicat中连接的时候。发现不能链接上,那么我就要查一下,看看是不是password不正确呀,我们再次查看user表:





    我们能够看到,上面我们改动的password为localhost为‘123456’(这里都是用MD5加密的)。可是我们用的是‘%’,这个时候,发现两个的password不同的。这个时候,我们须要查看一下password是什么。当然,我猜了一下,应该是root,因此,我把navicat的链接password为‘root’,发现能链接上了。。


    大家还可能出现这种问题:



    就是这种telnet 连接mysql。出现乱码加h_mysql_native_passowrd的问题,这个时候,不要管它就能够了。

    没有什么影响的。


    结论:


    我们在做什么事情的时候,都须要去一边思考一边学习,才干让效率更快!












  • 相关阅读:
    java中的匿名内部类总结
    (转)NIO与AIO,同步/异步,阻塞/非阻塞
    (转)也谈BIO | NIO | AIO (Java版)
    socket Bio demo
    (转)socket Aio demo
    (转)深入理解Java的接口和抽象类
    (转)Java:类与继承
    (转)Java中的static关键字解析
    (转)java字节流和字符流的区别
    (整理)MyBatis入门教程(一)
  • 原文地址:https://www.cnblogs.com/wgwyanfs/p/7169007.html
Copyright © 2020-2023  润新知