您的位置:首页 > 数据库 > MySQL

Linxu Yum方式安装Mysql

2015-08-20 13:44 585 查看
1、下载yum源

  进入http://dev.mysql.com/downloads/repo/,下载RedHat Enterprise Linux 6 / Oracle Linux 6版。文件名称:mysql-community-release-el6-5.noarch.rpm

2、安装yum源

  sudo yum localinstall mysql-community-release-el6-*.noarch.rpm

  这个Yum库包含了MySQL Server,MySQL工作台管理工具以及ODBC驱动,现在可以通过下面的命令简单地安装MySQLServer。

3、安装MySQL

  安装mysql客户端: yum install mysql

  安装mysql 服务器端: yum install mysql-server

  至此我就可以使用Yum简单地管理MySQL更新,并能确保总是从官网软件库得到最新的发布版。

4、修改 /etc/my.cnf

  文件MySql乱码: character-set-server=utf8

  表名不区分大小写: lower_case_table_names=1

  service mysqld stop; service mysqld start; 如果启动失败,则可能是配置文件不对导致,可以查看log文件排错

5、登陆问题:

  mysqladmin: connect to server at 'localhost' failed error: 'Access denied for user 'root'@'localhost' (using password: YES)'

  1:停止mysql服务: service mysqld stop

  2:执行命令:

    > mysqld_safe --skip-grant-tables & mysql -uroot -p 回车进入

> use mysql;

> update user set password=PASSWORD("newpass")where user="root"; 更改密码为 newpass

> flush privileges; 更新权限

> quit 退出

  3:重启mysql服务:service mysqld restart

  4:链接数据库:mysql -uroot -p 新密码

6、忘记本地root的登录密码码

  1、编辑/etc/my.cnf 在[mysqld] 配置部分添加一行 skip-grant-tables

  2、保存后重启mysql [root@localhost etc]# service mysqld restart

  3、登录数据库重新设置root密码 [root@localhost ~]# mysql -uroot -p mysql Enter password:直接回车进入

  mysql> show databases;
执行下列语句
mysql> update user set password=password("mysql") where user='root';
mysql> flush privileges;

  删除/etc/my.cnf文件中添加的“skip-grant-tables”行,重启mysql;

  用新设的密码就能正常登录了;

7、解决不能远程连接的问题

  1、root用户登录到mysql数据库 /usr/local/mysql/bin/mysql -u root -p (输入密码进入mysql)

  2、进入mysql,输入如下命令 use mysql;

  3、查看user表的情况 SELECT Host,User FROM user; //指明主机名称,“%”表示匹配所有字符串

  4、 UPDATE user SET Host = '%' WHERE User= 'root' LIMIT 1;

  5、输入如下命令让刚才设置的命令生效 mysql> flush privileges; Query OK, 0 rows affected (0.00 sec)

  6、注意在mysql 命令行形式下一定要输入";"

  按照前面五个步骤完成之后,通过控制台输入[root@linux ~]# mysql -h localhost -u root -p

  Enter password:

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

  不让这么连接数据库原因:是因为host对应的user字段是空的,我们需要将其改为root即可

  mysql> select host,user from user;

  解决办法一:mysql> update user set user='root' where host='localhost';

  解决办法二:将localhost改为本机的IP地址,则能够识别了[root@linux ~]# mysql -h 172.16.42.68 -u root -p

8、创建用户:
  命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password';
  说明:username - 你将创建的用户名, host - 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost, 如果想让该用户可以从任意远程主机登陆,可以使用通配符%. password -   该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器.

  例子: CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456';
  CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '123456';
  CREATE USER 'pig'@'%' IDENTIFIED BY '123456';
  CREATE USER 'pig'@'%' IDENTIFIED BY '';
  CREATE USER 'pig'@'%';
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: