zoukankan      html  css  js  c++  java
  • Linux下MySQL数据库安装与配置

    1. 安装MySQL数据库

    先从MySQL官网下载MySQL,然后进入所下载的安装文件所在目录,运行如下命令进行安装,其中MySQL-server-community-5.1.56-1.rhel5.i386.rpm为刚刚下载的MySQL数据库服务器的rpm包,然后使用/etc/rc.d/init.d/mysqlrestart命令重启MySQL服务:
     
    1. [root@localhost ~]# rpm -ivh MySQL-server-community-5.1.56-1.rhel5.i386.rpm  
    2. [root@localhost ~]# /etc/rc.d/init.d/mysql restart  
    3. Shutting down MySQL..[确定]  
    4. Starting MySQL..[确定]  

    2. 配置MySQL数据库字符集

    备注:配置MySQL数据库字符集的目的是方便的使用数据库,无需在每次连接的时候都要临时设置数据库字符集的,个人不建议采用这种方法,真正的工程项目都应该在连接数据库时临时设置数据库字符集,如此才便于系统的移植,而且又不会影响数据库服务器中的其他数据库的使用!

    安装完成之后,需要配置MySQL的字符集配置,首先需要查找MySQL的配置文件的位置,由于MySQL的配置文件名是以.cnf结尾的,因此可用如下命令进行查找:

     
    1. [root@localhost ~]# find / -iname '*.cnf' -print  
    2. /usr/share/mysql/my-large.cnf  
    3. /usr/share/mysql/my-medium.cnf  
    4. /usr/share/mysql/my-innodb-heavy-4G.cnf  
    5. /usr/share/mysql/my-huge.cnf  
    6. /usr/share/mysql/my-small.cnf  
    7. /usr/share/doc/MySQL-server-community-5.1.56/my-large.cnf  
    8. /usr/share/doc/MySQL-server-community-5.1.56/my-medium.cnf  
    9. /usr/share/doc/MySQL-server-community-5.1.56/my-innodb-heavy-4G.cnf  
    10. /usr/share/doc/MySQL-server-community-5.1.56/my-huge.cnf  
    11. /usr/share/doc/MySQL-server-community-5.1.56/my-small.cnf  
    12. /etc/pki/tls/openssl.cnf  

    输入完命令“find / -iname '*.cnf'-print”回车后,屏幕便显示搜索到的MySQL配置文件,然后拷贝my-large.cnf、my-medium.cnf 、my-innodb-heavy-4G.cnf 、my-huge.cnf、my-small.cnf中任意的一个到/etc目录下,并命名为my.cnf,其命令如下所示:

     
    1. [root@localhost ~]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf  
    2. [root@localhost ~]# vi /etc/my.cnf  

    然后,使用vi编辑器修改/etc/my.cnf文件,在[client]下添加: “default-character-set=gb2312”;在[mysqld]下添加:“default-character-set=gb2312”。如下所示:

     
    1. # The following options will be passed to all MySQL clients  
    2. [client]  
    3. default-character-set=gb2312  
    4. #password       = your_password  
    5. port            = 3306  
    6. socket          = /var/lib/mysql/mysql.sock  
    7.   
    8. # Here follows entries for some specific programs  
    9.   
    10. # The MySQL server  
    11. [mysqld]  
    12. default-character-set=gb2312  
    13. port            = 3306  
    14. socket          = /var/lib/mysql/mysql.sock  
    15. skip-locking  
    16. key_buffer_size = 16M  
    17. max_allowed_packet = 1M  
    18. table_open_cache = 64  
    19. sort_buffer_size = 512K  
    20. net_buffer_length = 8K  

    按一下Esc键,输入“:wq”后回车保存配置文件,输入“/etc/rc.d/init.d/mysqlrestart”重启MySQL服务,如下所示:

     
    1. [root@localhost ~]# /etc/rc.d/init.d/mysql restart  
    2. Shutting down MySQL..[确定]  
    3. Starting MySQL..[确定]  

    最后,我们来验证MySQL服务器配置是否成功,首先登录MySQL,输入“mysql –uroot -p”回车,系统提示输入密码,登录成功后进入MySQL命令模式,如下所示:

     
    1. [root@localhost ~]# mysql -uroot -p  
    2. Enter password:   
    3. Welcome to the MySQL monitor.  Commands end with ; or g.  
    4. Your MySQL connection id is 2  
    5. Server version: 5.1.56-community-log MySQL Community Server (GPL)  
    6. Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.  
    7. Oracle is a registered trademark of Oracle Corporation and/or its  
    8. affiliates. Other names may be trademarks of their respective  
    9. owners.  
    10. Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.  
    11. mysql>  

    在MySQL命令模式下分别输入“show variables like'collation_%';”、“show variables like 'character_set_%';”回车后显示字符集设置,如下所示:

     
    1. mysql> show variables like 'collation_%';  
    2. +----------------------+-------------------+  
    3. | Variable_name        | Value             |  
    4. +----------------------+-------------------+  
    5. | collation_connection | gb2312_chinese_ci |  
    6. | collation_database   | gb2312_chinese_ci |  
    7. | collation_server     | gb2312_chinese_ci |  
    8. +----------------------+-------------------+  
    9. 3 rows in set (0.05 sec)  
    10. mysql> show variables like 'character_set_%';  
    11. +--------------------------+----------------------------+  
    12. | Variable_name            | Value                      |  
    13. +--------------------------+----------------------------+  
    14. | character_set_client     | gb2312                     |  
    15. | character_set_connection | gb2312                     |  
    16. | character_set_database   | gb2312                     |  
    17. | character_set_filesystem | binary                     |  
    18. | character_set_results    | gb2312                     |  
    19. | character_set_server     | gb2312                     |  
    20. | character_set_system     | utf8                       |  
    21. | character_sets_dir       | /usr/share/mysql/charsets/ |  
    22. +--------------------------+----------------------------+  
    23. 8 rows in set (0.00 sec)  
    24. mysql>  

    根据以上查询结果可知我们设置的MySQL数据库配置信息已经生效,至此完成MySQL的服务器的安装与配置。

    3.关于MySQL数据库的一些注意事项

    3.1 远程连接mysql速度慢

    解决方法:
    在MySQL服务器的配置(/etc/my.cnf)中增加一个如下配置后速度飞快。
     
    1. [mysqld]  
    2. skip-name-resolve  
     
    备注:这样就能禁用DNS解析,连接速度会快很多。不过,这样的话就不能在MySQL的授权表中使用主机名了而只能用ip格式。

    3.2 重启数据库后,发现无需密码(或者任何密码)即可以连接

    解决方法:
    检查你的MySQL配置文件(/etc/my.cnf)中是不是多了一条语句:“skip-grant-tables”,删除(注释)该语句,重新配置MySQL密码,再次重启MySQL服务即可!
    备注:若使用skip-grant-tables系统将对任何用户的访问不做任何访问控制,但可以用 mysqladmin flush-privileges或mysqladmin reload来开启访问控制;默认情况是show databases语句对所有用户开放,如果mysql服务器没有开远程帐户,就在/etc/my.cnf里面加上skip-grant-tables。
     
     

        博客地址http://blog.csdn.net/shuxiao9058

        原始作者:季亚

  • 相关阅读:
    【Spring】IOC核心源码学习(二):容器初始化过程
    啃啃老菜:Spring IOC核心源码学习(一)
    快速理解Kafka分布式消息队列框架
    浅谈分布式缓存那些事儿
    JVM调优总结
    唉,程序员要是自学能力不行就等死吧!
    游戏开发入门
    JVM源码分析-Java运行
    Java阻塞队列的实现
    Java中堆内存和栈内存详解
  • 原文地址:https://www.cnblogs.com/Grace7582/p/5046684.html
Copyright © 2011-2022 走看看