您的位置:网站主页> Mysql教程 > ubuntu系统系统mysql教程

ubuntu系统系统mysql教程

时间:2018-06-04 14:37:01   编辑:一切随缘   文章来源:php教程网 已阅读:258 次

编程入门教程[www.ask186.com]网站介绍 

    编程入门教程主要涉及WEB开发领域,主要为广大WEB开发人员提供最新的WEB开发资讯信息,包含php教程mysql教程php面试题在线调色板php学习以及常用( Amazon ApiGoogle Api)等API、爱问资源共享HTML转JS不显示xml...[详细]
广告投放: 编程入门教程:www.ask186.com 电话:15818865556

        ubuntu系统系统mysql教程

        首先说明一个场景:我的电脑是ubuntu系统,之前apt-get自动安装过mysql。这也是出现错误最多的原因之一。
        安装过程,其中充斥着各种错误:

            6.mkdir mysql 
            7.groupadd mysql 
            8.useradd -r -g mysql mysql 
            # make clean 
            # rm -f CMakeCache.txt 
            # rm -rf /etc/my.cnf 
            9.cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql 
            -DMYSQL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8 
            -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all 
            -DENABLED_LOCAL_INFILE=1 
            make 
            make install 

        这个表示mysql源码安装已经完成了,现在要做就是初始化用户了,也就是多实例中最重要的一部了,以后的每一步都要注意命令执行后的结果:

            cd /usr/local/mysql 
            chown -R root:mysql . 
            chown -R mysql:mysql data 
            11.cp support-files/my-medium.cnf /etc/my.cnf 
            12.cd /usr/local/mysql 

            scripts/mysql_install_db --defaults-file=/usr/local/mysql/data_3308/my.cnf --datadir=/usr/local/mysql/data_3308/ 

        上面的mysql_install_db这个命令就是来进行初始化新用户。这里要注意命令执行后的结果,

            第一次的时候我的执行结果是这样的: 


            root@zhou:/usr/local/mysql# scripts/mysql_install_db --defaults-file=/usr/local/mysql/data_3307/my.cnf --datadir=/usr/local/mysql/data_3307/ 
            Installing MySQL system tables... 
            130107 10:25:47 [ERROR] COLLATION 'latin1_swedish_ci' is not valid for CHARACTER SET 'utf8' 
            130107 10:25:47 [ERROR] Aborting 
            130107 10:25:47 [Note] /usr/local/mysql/bin/mysqld: Shutdown complete 

        这里可以看出已经出现了错误,原因是什么,大家应该可以看明白了,自己太马虎了。导致自己重新执行了一次cmake
        然后重新进行上面的命令了。直到我们看到这样的结果:表示初始化成功了,恭喜你下面可以进行下面的操作了。

            root@zhou:/usr/local/mysql# mysql_install_db --user=mysql --defaults-file=/usr/local/mysql/data3307/my.cnf --datadir=/usr/local/mysql/data3307/ 
            Installing MySQL system tables... 
            OK 
            Filling help tables... 
            OK 

        这时他会在我们的data目录中生成一些mysql库啊和test库等这些基本信息。
        对了要注意了,权限的分配,一不小心mysql的就无法读取相关文件的权利。

            mysqld_safe --defaults-file=/usr/local/mysql/data_3307/my.cnf & 
            130107 13:35:36 [Note] Server socket created on IP: '0.0.0.0'. 
            130107 13:35:36 [ERROR] /usr/local/mysql/bin/mysqld: Can't find file: './mysql/host.frm' (errno: 13) 
            130107 13:35:36 [ERROR] Fatal error: Can't open and lock privilege tables: Can't find file: './mysql/host.frm' (errno: 13) 
            130107 13:35:36 mysqld_safe mysqld from pid file /usr/local/mysql/data3307/mysql.pid ended 

        这里的错误也是很明显的原因就是我们没有读取host。frm的权限了,补救的办法又两种:一种是直接到目录下给mysql附上这样的权限,第二种就是追究它原因为什么会那样呢?原因是我们在初始化的时候,没有加入--user=mysql这个参数才导致生成的文件全市root权限。
       

          在下次做时,就需要这样的命令了:

            root@zhou:/usr/local/mysql# mysql_install_db --user=mysql --defaults-file=/usr/local/mysql/data3307/my.cnf --datadir=/usr/local/mysql/data3307/ --user=mysql 

        ok,这时我们可以通过命令来查看一下我们开通的服务个数,然后登录上去进行基本的操作,权限,键表啊,replication啊等等。

        这里启动了三个mysql服务器后,发现只能登录到3306上面的服务去,而其他的就是没法登录,当我把3307 3306杀掉后,登录mysql确出现错误了,

            root@zhou:/usr/local/mysql/tmp# mysql 
            ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111) 

        错误原因:当在没有指定那个数据库服务器是它是有个默认启动计划,所以这里可以看出它还是在等待mysql 3306的那个服务器的。

            root@zhou:/etc/init.d# mysql -h127.0.0.1 -P3307 

 

  • 上一篇:
  • 下一篇:

本文地址:http://www.ask186.com/content/article/mysql/31984.html(转载请保留)

相关关键词搜索:ubuntu,mysql,教程

发表评论
      
* 以上用户言论只代表其个人观点,不代表www.ask186.com网站的观点或立场
推荐文档更多
编程入门教程 | PHP教程 | Mysql教程 | Apache教程 | 最新文章 | PHP面试题| 网站地图 | Google地图 | Baidu地图 | 在线WEB论坛| 中纪委反腐最新消息

WEB技术QQ交流群:151963186 站长Q号:547214413
版权所有者:编程入门教程 地址:云南省文山州砚山县盘龙乡 滇ICP备12002707号-1
特别声明:本站内容仅供参考,不作为设计及确切依据!想了解更多,可立即进入Bbs提问