linux下安装mysql总结(用N种方法还是安装版好用)

第一步:
a. 检查MySQL及相关RPM包,是否安装,如果有安装,则移除(rpm –e 名称)

[root@localhost ~]# rpm -qa | grep -i mysql

mysql-libs-5.1.66-2.el6_3.x86_64

[root@localhost ~]# yum -y remove mysql-libs*(有其他的继续执行yum相关的命令)

第二步:
b. 下载Linux对应的RPM包,如:CentOS6.4_64对应的RPM包,[root@localhost rpm]# ll

total 74364

-rw-r–r–. 1 root root 18442536 Dec 11 20:19 MySQL-client-5.6.15-1.el6.x86_64.rpm

-rw-r–r–. 1 root root 3340660 Dec 11 20:06 MySQL-devel-5.6.15-1.el6.x86_64.rpm

-rw-r–r–. 1 root root 54360600 Dec 11 20:03 MySQL-server-5.6.15-1.el6.x86_64.rpm:
c. 进去下载好的包目录,安装MySQL

[root@localhost rpm]# rpm -ivh MySQL-server-5.6.15-1.el6.x86_64.rpm

[root@localhost rpm]# rpm -ivh MySQL-devel-5.6.15-1.el6.x86_64.rpm

[root@localhost rpm]# rpm -ivh MySQL-client-5.6.15-1.el6.x86_64.rpm

修改配置文件位置

[root@localhost rpm]# cp /usr/share/mysql/my-default.cnf /etc/my.cnf

第四步
d. 初始化MySQL及设置密码

[root@localhost rpm]# /usr/bin/mysql_install_db

[root@localhost rpm]# service mysql start

[root@localhost rpm]# cat /root/.mysql_secret  #查看root账号密码
# The random password set for the root user at Wed Dec 11 23:32:50 2013 (local time): qKTaFZnl

[root@localhost ~]# mysql -uroot –pqKTaFZnl

mysql> SET PASSWORD = PASSWORD('123456');    #设置密码为123456

mysql> exit

[root@localhost ~]# mysql -uroot -p123456

(注意:在执行# mysql -uroot –pqKTaFZnl可能会报Access denied for user ‘root’@’localhost’ (using password: NO)错
解决方法:首先 停掉mysql服务器

[root@DB-Server init.d]# /etc/rc.d/init.d/mysql stop

 Shutting down MySQL..[ OK ]

然后 使用mysqld_safe命令在启动mysql,更新root账号的密码

参数–skip-grant-tables:不启动grant-tables(授权表),跳过权限控制。

参数–skip-networking :跳过TCP/IP协议,只在本机访问(从网上有些资料看,这个选项不是必须的。可以不用)

[root@DB-Server init.d]# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &

    [2] 9396

[root@DB-Server init.d]# 140722 14:59:46 mysqld_safe Logging to '/var/lib/mysql/DB-Server.err'.

    140722 14:59:46 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
(这个步骤有错不理)

之后 执行

[root@DB-Server init.d]# mysql -u root mysql

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A



Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 1

Server version: 5.6.19 MySQL Community Server (GPL)



Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.



Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.



Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.



mysql> select Host, User, Password,password_expired

    -> from user

    -> where user='root' and host='root' or host='localhost';

+-----------+------+-------------------------------------------+------------------+

| Host      | User | Password                                  | password_expired |

+-----------+------+-------------------------------------------+------------------+

| localhost | root | *A848DE7CCD839E924921BEE41711991DDA0D529E | Y                |

+-----------+------+-------------------------------------------+------------------+

1 row in set (0.00 sec)



mysql> update user set password=PASSWORD('123456')

    -> where user='root' and host='root' or host='localhost';

Query OK, 1 row affected (0.00 sec)

Rows matched: 1  Changed: 1  Warnings: 0

新设置用户或更改密码后需用flush privileges刷新MySQL的系统权限相关表,否则会出现拒绝访问,还有一种方法,就是重新启动mysql服务器,来使新设置生效。

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)



mysql> quit

Bye

[root@DB-Server init.d]# /etc/rc.d/init.d/mysql restart

Shutting down MySQL..140722 15:02:27 mysqld_safe mysqld from pid file /var/lib/mysql/DB-Server.pid ended

[  OK  ]

Starting MySQL.[  OK  ]

[2]-  Done                    mysqld_safe --user=mysql --skip-grant-tables --skip-networking

[root@DB-Server init.d]# mysql -u root p

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

[root@DB-Server init.d]# mysql -u root -p

Enter password: 

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 2

Server version: 5.6.19



Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.



Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.



Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.



mysql> 

另外,如果登录mysql数据库后执行脚本遭遇 ERROR 1820 (HY000): You must SET PASSWORD before executing this statement,可以使用重新设置一次密码即可解决问题.

mysql>set password = password('123456'); 
)

第五步:
e. 允许远程登陆

mysql> use mysql;

mysql> select host,user,password from user;

+-----------------------+------+-------------------------------------------+

| host                  | user | password                                  |

+-----------------------+------+-------------------------------------------+

| localhost             | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |

| localhost.localdomain | root | *1237E2CE819C427B0D8174456DD83C47480D37E8 |

| 127.0.0.1             | root | *1237E2CE819C427B0D8174456DD83C47480D37E8 |

| ::1                   | root | *1237E2CE819C427B0D8174456DD83C47480D37E8 |

+-----------------------+------+-------------------------------------------+



mysql> update user set password=password('123456') where user='root';

mysql> update user set host='%' where user='root' and host='localhost';

mysql> flush privileges;

mysql> exit

第六步:
f. 设置开机自启动

[root@localhost ~]# chkconfig mysql on

[root@localhost ~]# chkconfig --list | grep mysql

mysql           0:off   1:off   2:on    3:on    4:on    5:on    6:off

最后:
g. MySQL的默认安装位置
/var/lib/mysql/ #数据库目录

/usr/share/mysql #配置文件目录

/usr/bin #相关命令目录

/etc/init.d/mysql #启动脚本

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

配置/etc/my.cnf文件,修改数据存放路径、mysql.sock路径以及默认编码utf-8.
[client]
password = 123456
port = 3306
default-character-set=utf8
[mysqld]
port = 3306
character_set_server=utf8
character_set_client=utf8
collation-server=utf8_general_ci

(注意linux下mysql安装完后是默认:表名区分大小写,列名不区分大小写; 0:区分大小写,1:不区分大小写)

lower_case_table_names=1

(设置最大连接数,默认为 151,MySQL服务器允许的最大连接数16384; )

max_connections=1000
[mysql]
default-character-set = utf8

~~~查看字符集

show variables like ‘%collation%’;

show variables like ‘%char%’;

最后:
mysql -uroot -p123456

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值