linux安装mysql

1.安装mysql服务端

rpm -ivh MySQL-server-5.5.47-1.linux2.6.x86_64.rpm

注意:mysql出场自带root用户,我们需要为root用户设定密码

2.安装mysql客户端

rpm -ivh MySQL-client-5.5.47-1.linux2.6.x86_64.rpm

3.查看mysql安装时创建的mysql用户、mysql组、mysql版本

1 用户 cat /etc/passwd|grep mysql
2 组 cat /etc/group|grep mysql

 查看mysql的版本

mysqladmin --version

 

 注:以上3中操作都代表mysql安装成功

4.启动mysql服务

service mysql start

  查看mysql服务是否启动

  ps -ef|grep mysql

  启动:

  未启动:

 5.未设定root用户的密码时,使用mysql可直接进入mysql命令行(不安全)

使用exit退出mysql命令行

6.按照安装mysql服务时的提示,设置MySQL root用户的密码

mysql服务提示:

为root用户设置密码:

/usr/bin/mysqladmin -u root password root

使用 mysql -u root -p进入mysql命令行(此时需要密码)

7.设置开机自启mysql

chkconfig mysql on

8.查看运行级别

2、3、4、5为正常情况下启动

chkconfig --list | grep mysql
结果如下:
mysql              0:off    1:off    2:on    3:on    4:on    5:on    6:off
1 cat /etc/inittab
2 # Default runlevel. The runlevels used are:
3 #   0 - halt (Do NOT set initdefault to this)
4 #   1 - Single user mode
5 #   2 - Multiuser, without NFS (The same as 3, if you do not have networking)
6 #   3 - Full multiuser mode
7 #   4 - unused
8 #   5 - X11
9 #   6 - reboot (Do NOT set initdefault to this)

9.查看mysql是否开机自启

ntsysv
进入后如下:

 

按tab键可以跳到下面,然后选择 ok 或 Cancel
注意:看到[*]mysql这一行,表示开机后会自动启动mysql

10.在linux下查看mysql的安装目录

ps -ef|grep mysql
结果如下:
root       4550      1  0 01:31 pts/0    00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/lib/mysql/redis.pid
mysql      4643   4550  0 01:31 pts/0    00:00:03 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/lib/mysql/redis.err --pid-file=/var/lib/mysql/redis.pid
root       5690   5656  0 02:38 pts/1    00:00:00 grep mysql

相关路径说明:
--datadir=/var/lib/mysql mysql数据库文件的存放路径
/usr/share/mysql 配置文件目录 mysql.server命令及配置文件
/usr/bin 相关命令目录 mysqladmin、mysqldump等命令
/etc/init.d/mysql 启停相关脚本 service mysql stop

11.修改mysql配置文件位置

     将/usr/share/mysql 目录下的 my-huge.cnf 文件拷贝到etc下

当前5.5版本   cp /usr/share/mysql/my-huge.cnf /etc/my.cnf
5.6版本 cp /usr/share/mysql/my-default.cnf /etc/my.cnf

注意:修改mysql配置文件位置后重起mysql服务

           service mysql restart

12.进入mysql命令行

    mysql -u root -p

12.1查看数据库:show databases;

    mysql自带4个数据库

 

12.2 创建数据库:create database db01;

12.3 创建表 :create table user(id int not null,name varchar(20));

12.4往user表中插入数据:insert into user values(1,'zhangsan');

                                           insert into user values (2,'张三');

12.5查看表:select * from user;

 注意:会发生中文乱码问题,此时需要修改mysql的默认编码为utf-8

13.修改字符集和数据的存储路径

13.1查看字符集:

       show variables like '%char%';

       show variables like 'character%';

       结果如下:

+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | latin1                     |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | latin1                     |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
默认的时服务端和客户端都是latin1所以会乱

13.2修改

    :set nu该命令可以使文件有行号(例子:1、2、 3 linux文件中)

    在当前光标的下一行输入就点击o(linux文件中)

修改 /etc/my.cnf 文件

总共修改三处
第一处:
17 [client]
 18 #password       = your_password
 19 port            = 3306
 20 socket          = /var/lib/mysql/mysql.sock
 21 default-character-set=utf8
第二处:
26 [mysqld]
 27 port            = 3306
 28 character_set_server=utf8
 29 character_set_client=utf8
 30 collation-server=utf8_general_ci
 31 socket          = /var/lib/mysql/mysql.sock
第三处:
138 [mysql]
139 no-auto-rehash
140 default-character-set=utf8
注意:红色字为要修改的地方,这里全都是粘贴进来的


13.3修改完毕之后要重启服务:service mysql stop
                                            service mysql start
       重启成功则说明mysql的配置文件修改成功

13.4修改完配置文件再次往user表中插入数据,并再次查看,还是乱码

      原因:db01是在我们修改字符集编码前就创建了的,所以它不在utf8这个范围内

                 修改完毕后,再次创建db02,此时db02在范围内,就不会发生中文乱码的问题了

13.4.1前提:修改了/etc/my.cnf后

13.4.2 创建数据库:create database db02;

13.4.3使用数据库:use db02;

13.4.4创建表:create table user(id int not null,name varchar(20));

13.4.5插入数据:insert into user values (2,'张三');

13.4.6查看表:select * from user;

原文地址:https://www.cnblogs.com/yezihan/p/11488561.html