`

Linux下安装Mysql

阅读更多
使用的是RedHat Enterprise 5。
1.在官网上下载MySql安装包:
http://dev.mysql.com/downloads/mysql/5.1.html#downloads
MySQL 服务端:MySQL-server-community-5.1.50-1.rhel5.i386.rpm
MySQL 客户端:MySQL-client-community-5.1.50-1.rhel5.i386.rpm
这两个都要装。不装client的话mysqladmin等命令是没有的。
2.安装。
我使用的是图形界面,直接双击即可

也可以用命令:

Linux代码 
1.rpm -ivh MySQL-server-community-5.1.50-1.rhel5.i386.rpm 
2.rpm -ivh MySQL-client-community-5.1.50-1.rhel5.i386.rpm 
安装好后,查看版本:



Linux代码 
1.# rpm -qa |grep -i mysql 
2.MySQL-server-community-5.1.50-1.rhel5 
即表示装好了。
3.MySql目录结构
(1)数据库目录
/var/lib/mysql/
(2)配置文件
/usr/share/mysql(mysql.server命令及配置文件)
(3)相关命令
/usr/bin(mysqladmin mysqldump等命令)
(4)启动脚本
/etc/rc.d/init.d/(启动脚本文件mysql的目录)
4.修改登录密码
默认是没有密码的。
# /usr/bin/mysqladmin -u root password 'new-password'
格式:mysqladmin -u用户名 -p旧密码 password 新密码
命令:# /usr/bin/mysqladmin -u root password "root"
表示将root设置密码为:root
注意:如果没装client会报错:
bash: mysqladmin: command not found
使用新设置的密码
[root]# mysql -u root -p
Enter password: (输入密码root)
[root@localhost etc]# mysql -u root -p
Enter password:
出现下面信息表示登录。



Mysql代码 
1.Welcome to the MySQL monitor.  Commands end with ; or \g. 
2.Your MySQL connection id is 2 
3.Server version: 5.1.50-community MySQL Community Server (GPL) 
4. 
5.Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. 
6.This software comes with ABSOLUTELY NO WARRANTY. This is free software, 
7.and you are welcome to modify and redistribute it under the GPL v2 license 
8. 
9.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. 
10. 
11.mysql> 
 
5.mysql启动和停止操作
可以通过   #/etc/init.d/mysql[start|stop|restart](实现启动,停止,重启)
也可以通过 #service mysql[start|stop|restart](实现启动,停止,重启)
例如:



Linux代码 
1.[root@localhost etc]# /etc/init.d/mysql  restart  
2.Shutting down MySQL....                                    [  OK  ] 
3.Starting MySQL.                                            [  OK  ] 

6.设置MySQL远程访问
新建一个用户risk,让他能够在任意机器访问MySql服务器



Mysql代码 
1.mysql> grant all to risk @"%" Identified by "risk"; 
2.查看: 
3.mysql> use mysql 
4.Database changed 
5.mysql> select host,user from user; 
6.+-----------------------+-------+ 
7.| host                  | user  | 
8.+-----------------------+-------+ 
9.| %                     | risk  | 
10.| localhost             | root  | 
11.+-----------------------+-------+ 
12.2 rows in set (0.00 sec) 
可以看到host为"%",表示在任意机器都能用RISK用户访问此服务器。
这样就可以在远程访问了。
7.设置MySql字符集



Mysql代码 
1.mysql> show variables like 'character_set%' ;  
2.+--------------------------+----------------------------+  
3.| Variable_name            | Value                      |  
4.+--------------------------+----------------------------+  
5.| character_set_client     | latin1                     |  
6.| character_set_connection | latin1                     |  
7.| character_set_database   | latin1                     |  
8.| character_set_filesystem | binary                     |  
9.| character_set_results    | latin1                     |  
10.| character_set_server     | latin1                     |  
11.| character_set_system     | utf8                       |  
12.| character_sets_dir       | /usr/share/mysql/charsets/ |  
13.+--------------------------+----------------------------+ 
可以看到MySql默认为latin1
只需修改my.ini文件即可,但是Linux上没有这个文件,那么复制一个到/etc下即可
使用Linux命令:
#cp /usr/share/mysql/my-medium.cnf   /etc/my.cnf  
#vi /etc/my.cnf
编辑添加红色字体到my.cnf,保存重启。
  #password       = your_password
  port            = 3306
  socket          = /var/lib/mysql/mysql.sock
 
  default-character-set=utf8
              
  port            = 3306
  socket          = /var/lib/mysql/mysql.sock
  skip-locking
  key_buffer = 16M
  max_allowed_packet = 1M
  table_cache = 64
  sort_buffer_size = 512K
  net_buffer_length = 8K
  read_buffer_size = 256K
  read_rnd_buffer_size = 512K
  myisam_sort_buffer_size = 8M
 
  default-character-set=utf8
  init_connect='SET NAMES utf8'
 
  [mysql]
  no-auto-rehash
 
  default-character-set=utf8
  查看:


Mysql代码 
1.mysql> show variables like 'character_set%' ; 
2.+--------------------------+----------------------------+ 
3.| Variable_name            | Value                      | 
4.+--------------------------+----------------------------+ 
5.| character_set_client     | utf8                       | 
6.| character_set_connection | utf8                       | 
7.| character_set_database   | utf8                       | 
8.| character_set_filesystem | binary                     | 
9.| character_set_results    | utf8                       | 
10.| character_set_server     | utf8                       | 
11.| character_set_system     | utf8                       | 
12.| character_sets_dir       | /usr/share/mysql/charsets/ | 
13.+--------------------------+----------------------------+ 
14.8 rows in set (0.00 sec) 
这时就将所有的都改成utf8了
测试一下:



Mysql代码 
1.mysql> insert into student values('','张三','湖北',20);  
2.Query OK, 1 row affected, 1 warning (0.00 sec) 
3.mysql> insert into student values('','李四','上海',30);  
4.Query OK, 1 row affected, 1 warning (0.01 sec) 
5.mysql> select * from student; 
6.+----+--------+---------+------+ 
7.| id | name   | address | age  | 
8.+----+--------+---------+------+ 
9.|  1 | 张三   | 湖北    |   20 | 
10.|  2 | 李四   | 上海    |   30 | 
11.+----+--------+---------+------+ 
12.2 rows in set (0.00 sec) 
可以看到能够正常的显示中文。
注意:如果系统安装的是英文系统,没有装语言包的话可能是不能显示中文的,语言包一般在安装盘的server文件夹内,直接搜:Chinese出来的第一个rpm就是,然后双击安装即可。
8.使用命令导入
mysql> source /home/risk/db.sql
9.设置mysql服务器忽略大小写



Mysql代码 
1.在Linux系统下MYSQL服务器是区分大小写的,这时就需要进行下简单的设置让他忽略就可以了。 
2.编辑先前cp的my.cnf文件 
3.# vi /etc/my.cnf 
4.在[mysqld]下加入一行:     
5.lower_case_table_names=1 
6.保存后,重启服务 
7./etc/init.d/mysql  restart  
8.有人说要将数据库删除重新导入,我用的是MySql5可能版本不太一样,现在已经OK了! 

10.修改Mysql安装目录(这个是来自网络,暂时还没测试)



Java代码 
1.MySQL默认的数据文件存储目录为/var/lib/mysql。假如要把目录移到/home/data下需要进行下面几步:  
2.1、home目录下建立data目录  
3.  cd /home  
4.  mkdir data  
5.2、把MySQL服务进程停掉:  
6.  mysqladmin -u root -p shutdown  
7.3、把/var/lib/mysql整个目录移到/home/data  
8.  mv /var/lib/mysql /home/data/  
9.  这样就把MySQL的数据文件移动到了/home/data/mysql下  
10.4、找到my.cnf配置文件  
11.如果/etc/目录下没有my.cnf配置文件,请到/usr/share/mysql/下找到*.cnf文件,拷贝其中一个到/etc/并改名为my.cnf。命令如下:  
12.[root@test1 mysql]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf  
13.5、编辑MySQL的配置文件/etc/my.cnf  
14.为保证MySQL能够正常工作,需要指明mysql.sock文件的产生位置。修改 scocket=/var/lib/mysql/mysql.sock一行中等号右边的值         为:/home/mysql/mysql.sock 。操作如下:  
15.   vi  my.cnf    (用vi工具编辑my.cnf文件,找到下列数据修改之)  
16.   # The MySQL server  
17.    [mysqld]  
18.    port   = 3306  
19.   #socket  = /var/lib/mysql/mysql.sock(原内容,为了更稳妥用“#”注释此行) 
20.    socket  = /home/data/mysql/mysql.sock   (加上此行) 
21.6、修改MySQL启动脚本/etc/rc.d/init.d/mysql  
22.  最后,需要修改MySQL启动脚本/etc/rc.d/init.d/mysql,把其中datadir=/var/lib/mysql一行中,等号右  
23.边的路径改成你现在的实际存放路径:home/data/mysql。  
24.  [root@test1 etc]# vi /etc/rc.d/init.d/mysql  
25.  #datadir=/var/lib/mysql    (注释此行)  
26.  datadir=/home/data/mysql   (加上此行)  
27.7、重新启动MySQL服务  
28.  /etc/rc.d/init.d/mysql start  
29.  或用reboot命令重启Linux  
30.  如果工作正常移动就成功了,否则对照前面的7步再检查一下。 
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics