返回
软件
分类

或者使用/etc/init.d来启动mysql,下载地址为

日期: 2020-01-02 08:09 浏览次数 : 192

linux安装mysql的glibc包

下载mysql:

选择一个mysql的版本,之后一定要看好,下glibc的。如:mysql-5.0.90-linux-i686-glibc23.tar.gz

本例中下载到了/media目录下,这个不是好习惯...

▲安装mysql:

下面是linux命令

[plain] view plaincopy

  1. :$ sudo groupadd mysql
  2. :$ sudo useradd -g mysql mysql
  3. :$ cd /usr/local
  4. :$ tar zvxf /media/mysql-5.0.90-linux-i686-glibc23.tar.gz [plain] view plaincopy

    1. :$ mv mysql-5.0.90-linux-i686-glibc23 mysql [plain] view plaincopy

      1. :$ cd mysql
      2. :$ sudo chown -R mysql .
      3. :$ sudo chgrp -R mysql .
      4. :$ scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql
      5. :& cd ..
      6. :$ sudo chown -R root mysql .
      7. :$ cd mysql
      8. :$ sudo chown -R mysql data
      9. :$ bin/mysqld_safe --basedir=/usr/local/mysql --user=mysql &

        至此,mysql安装成功。

        因为在运行状态,我没有ctrl-c,只好再开一个ssh窗口...

        ▲为mysql的root用户添加密码

        下面是linux命令

        **[c-sharp] view plaincopy**

        1. cd /usr/local/mysql/bin ./mysql -u root

          进入mysql后:

          [c-sharp] view plaincopy

          1. mysql> GRANT ALL PRIVILEGES ON *.* TO [email protected] IDENTIFIED BY "chang";

            其实是设置了root的localhost的密码为chang
            显示执行成功,然后exit退出mysql。

            之后,再次登录mysql,这次要用密码了:

            [c-sharp] view plaincopy

            1. cd /usr/local/mysql/bin./mysql -u root -p

              输入密码chang之后,可以正常登录,如下:

              Welcome to the MySQL monitor. Commands end with ; or /g.
              Your MySQL connection id is 1
              Server version: 5.0.90 MySQL Community Server (GPL)

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

              查看一下用户信息:

              [c-sharp] view plaincopy

              1. 1. mysql> select user,host,password from mysql.user; 结果如下: +------+-----------+----------+
                必赢备用网址 , | user | host | password |
                +------+-----------+----------+
                | root | localhost | *F05D019BA3BEC01CA9FBD4141E4EA57A28EF3EDF | ← (root密码为chang)
                | root | linux | | ← (root密码为空)
                | root | 127.0.0.1 | | ← (root密码为空)
                | | localhost | |
                +------+-----------+----------+ 分别更改它们的密码: [c-sharp] view plaincopy 1. mysql> set password for [email protected]=password('chang'); [c-sharp] view plaincopy 1. mysql> set password for [email protected]=password('chang');  [c-sharp] view plaincopy 1. mysql> set password for [email protected]=password('chang');  再次查看用户信息会发现已经更改过来。 然后退出mysql。 ▲把mysql做成服务 [c-sharp] view plaincopy 1. sudo cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql 启动mysql服务 [c-sharp] view plaincopy 1. sudo /etc/init.d/mysql start 这时候就可以重启机器试试了
                重启后再登陆mysql,发现可以登陆。服务制作成功! ▲配置mysql [c-sharp] view plaincopy 1. vi /etc/my.cnf (注释:如果没有自动生成my.cnf文件,那么:安装完的mysql包下有个support-files文件夹,其中有my-huge.cnf等,将my-huge copy一份,改名为my.cnf,将其适当地修改(当然是根据你的数据库配置)然后copy至/etc/my.cnf) 打开my.cnf后 找到[client] 添加:
                default-character-set = utf8 # 默认字符集为utf8 找到[mysqld] 添加:
                default-character-set = utf8 #默认字符集为utf8
                init_connect = 'SET NAMES utf8' #设定连接mysql数据库时使用utf8编码,以让mysql数据库为utf8运行 修改好后,重新启动即可.
                我这里是重启了mysql的服务: [c-sharp] view plaincopy 1. sudo /etc/init.d/mysql restart
                (有一次找不到sock,这样重启两次服务之后居然可以了!!!汗。) 之后进入mysql,查一下是否更改了字符集:
                [c-sharp] view plaincopy 1. cd /usr/local/mysql/bin./mysql -u root -p [c-sharp] view plaincopy 1. mysql> show variables like 'character%'; 出现下面的画面: +--------------------------+----------------------------------------+
                | Variable_name | Value |
                +--------------------------+----------------------------------------+
                | character_set_client | utf8 |
                | character_set_connection | utf8 |
                | character_set_database | utf8 |
                | character_set_filesystem | binary |
                | character_set_results | utf8 |
                | character_set_server | utf8 |
                | character_set_system | utf8 |
                | character_sets_dir | /usr/local/mysql/share/mysql/charsets/ |
                +--------------------------+----------------------------------------+ 好,数据库语言完毕。 ▲打开mysql的远程访问 mysql默认是不允许远程访问的。
                用密码登陆mysql,可以正常登陆,但是换台机器用工具连,就报错:
                ERROR 1130: Host 192.168.1.6 is not allowed to connect to this MySQL server 方法: 改表法。mysql默认是不允许远程访问的,只能在localhost访问。这个时候只要在localhost的那台电脑,登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改成”%” mysql -u root -p
                Enter password: chang
                mysql>use mysql;
                mysql>update user set host = '%' where user = 'root'; //可能会报错
                mysql>flush privileges;
                mysql>select host,user from user where user='root';
                执行完上面的,就可以远程连接了! 注释: update user set host = '%' where user = 'root'; //这个命令执行错误时,可能会报错:
                ERROR 1062 (23000): Duplicate entry '%-root' for key 1;
                解决方法:
                1,不用管它。呵呵。
                2,改成这样执行
                update user set host='%' where user='root' and host='localhost';
                也就是把localhost改成了所有主机。 ---------------------------------------------------
                之后运行app程序,报错:
                ImportError: libmysqlclient_r.so.15: cannot open shared object file: No such file or directory 解决办法是把/usr/local/mysql/lib下的
                libmysqlclient_r.so.15
                拷贝到/usr/lib解决。 至此,mysql安装配置完毕! ================= 我是华丽的分割线 ======================== ----------------------------------------------------
                ■附注:
                附注1: 重启和关闭mysql服务
                重启mysql服务
                :$ sudo /etc/init.d/mysql restart
                关闭mysql服务
                :$ sudo /etc/init.d/mysql stop
                ----------------------------------------------------
                附注2: 非服务状态下,启动和停止mysql
                启动mysql
                代码:
                :& cd /usr/local/mysql
                :& bin/mysqld_safe --basedir=/usr/local/mysql --user=mysql & 停止mysql
                代码:
                :& cd /usr/local/mysql
                :$ bin/mysqladmin -uroot -ppassw0rd shutdown ----------------------------------------------------
                附注3: mysql命令行中文显示?号
                mysql> set names utf8; ---------------------------------------------------
                附注4: mysql的数据库存放路径
                /var/lib/mysql ---------------------------------------------------
                附注5: 从mysql中导出和导入数据
                mysqldump 数据库名 > 文件名 #导出数据库
                mysqladmin create 数据库名 #建立数据库
                mysql 数据库名 < 文件名 #导入数据库 ---------------------------------------------------
                附注6: 修改mysql的root口令
                sudo mysqladmin -u root -p password '你的新密码' 或者:括号里是新密码
                use mysql;
                update user set Password=password('chang') where User='root';
                flush privileges; ---------------------------------------------------
                附注7: 忘了mysql的root口令怎么办
                sudo /etc/init.d/mysql stop
                sudo mysqld_safe --skip-grant-tables &
                sudo mysqladmin -u user password 'newpassword
                sudo mysqladmin flush-privileges ---------------------------------------------------
                附注8: 输入要登录的mysql主机
                ./mysql -u root -h 127.0.0.1 -p
                                                            执行安全设置

                                                                #bin/mysql_secure_installation


                                                                NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
                                                                      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

                                                                In order to log into MySQL to secure it, we'll need the current
                                                                password for the root user.  If you've just installed MySQL, and
                                                                you haven't set the root password yet, the password will be blank,
                                                                so you should just press enter here.

                                                                Enter current password for root (enter for none):<---输入现在的root密码,因为我们还没设置,直接回车
                                                                OK, successfully used password, moving on...

                                                                Setting the root password ensures that nobody can log into the MySQL
                                                                root user without the proper authorisation.

                                                                Set root password? [Y/n] Y   <---是否设定root密码,当然设置了,输入Y回车
                                                                New password: <---输入root密码,并回车,输入的过程中不会有任何显示
                                                                Re-enter new password: <---再次输入root密码,并回车,输入的过程中不会有任何显示
                                                                Password updated successfully!
                                                                Reloading privilege tables..
                                                                 ... Success!

                                                                By default, a MySQL installation has an anonymous user, allowing anyone
                                                                to log into MySQL without having to have a user account created for
                                                                them.  This is intended only for testing, and to make the installation
                                                                go a bit smoother.  You should remove them before moving into a
                                                                production environment.

                                                                Remove anonymous users? [Y/n] Y <---是否删除匿名用户,删除,输入Y回车
                                                                 ... Success!

                                                                Normally, root should only be allowed to connect from 'localhost'.  This
                                                                ensures that someone cannot guess at the root password from the network.

                                                                Disallow root login remotely? [Y/n] Y <---是否删禁止root用户远程登录,当然禁止,输入Y回车
                                                                 ... Success!

                                                                By default, MySQL comes with a database named 'test' that anyone can
                                                                access.  This is also intended only for testing, and should be removed
                                                                before moving into a production environment.

                                                                Remove test database and access to it? [Y/n] <---是否删除测试数据库test,删除,输入Y回车
                                                                 - Dropping test database...
                                                                 ... Success!
                                                                 - Removing privileges on test database...
                                                                 ... Success!

                                                                Reloading the privilege tables will ensure that all changes made so far
                                                                will take effect immediately.

                                                                Reload privilege tables now? [Y/n] Y <---刷新权限,输入Y回车
                                                                 ... Success!

                                                                Cleaning up...

                                                                All done!  If you've completed all of the above steps, your MySQL
                                                                installation should now be secure.

                                                                Thanks for using MySQL!




                                                            http://www.bkjia.com/Mysql/985802.htmlwww.bkjia.comtruehttp://www.bkjia.com/Mysql/985802.htmlTechArticlelinux安装mysql的glibc包
                                                            下载mysql:
                                                            http://downloads.mysql.com/archives.php
                                                            选择一个mysql的版本,之后一定要看好,下glibc的。如:mysql-5.0.90-linux-i686-...

1、下载MySQL的安装文件
安装MySQL需要下面两个文件:
MySQL-server-4.0.23-0.i386.rpm  
MySQL-client-4.0.23-0.i386.rpm
下载地址为: x86 RPM downloads”项,找到“Server”和“Client programs”项,下载需要的上述两个rpm文件。
2、安装MySQL
rpm文件是Red Hat公司开发的软件安装包,rpm可让Linux在安装软件包时免除许多复杂的手续。该命令在安装时常用的参数是 –ivh ,其中i表示将安装指定的rmp软件包,V表示安装时的详细信息,h表示在安装期间出现“#”符号来显示目前的安装过程。这个符号将持续到安装完成后才停 止。
1)安装服务器端
在有两个rmp文件的目录下运行如下命令:
[root@test1 local]# rpm -ivh MySQL-server-4.0.23-0.i386.rpm
显示如下信息。
warning: MySQL-client-4.0.23-0.i386.rpm
signature: NOKEY, key ID 5072e1f5
Preparing...       ########################################### [100%]
1:MySQL-server     ########################################### [100%]
。。。。。。(省略显示)
/usr/bin/mysqladmin -u root password 'new-password'
/usr/bin/mysqladmin -u root -h test1 password 'new-password'
。。。。。。(省略显示)
Starting mysqld daemon with databases from /var/lib/mysql
如出现如上信息,服务端安装完毕。测试是否成功可运行netstat看Mysql端口是否打开,如打开表示服务已经启动,安装成功。Mysql默认的端口是3306。
[root@test1 local]# netstat -nat
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address      Foreign Address     State   
tcp  0  0 0.0.0.0:3306     0.0.0.0:*      LISTEN   
上面显示可以看出MySQL服务已经启动。
2)安装客户端
运行如下命令:
[root@test1 local]# rpm -ivh MySQL-client-4.0.23-0.i386.rpm
warning: MySQL-client-4.0.23-0.i386.rpm: V3 DSA signature: NOKEY, key ID 5072e1f5
Preparing...    ########################################### [100%]
1:MySQL-client  ########################################### [100%]
显示安装完毕。
用下面的命令连接mysql,测试是否成功。
三、登录MySQL
登录MySQL的命令是mysql, mysql 的使用语法如下:
mysql [-u username] [-h host] [-p[password]] [dbname]
username 与 password 分别是 MySQL 的用户名与密码,mysql的初始管理帐号是root,没有密码,注意:这个root用户不是Linux的系统用户。MySQL默认用户是root,由于 初始没有密码,第一次进时只需键入mysql即可。
[root@test1 local]# mysql
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 1 to server version: 4.0.16-standard
Type 'help;' or 'h' for help. Type 'c' to clear the buffer.
mysql>
出现了“mysql>”提示符,恭喜你,安装成功!
增加了密码后的登录格式如下:
mysql -u root -p
Enter password: (输入密码)

 

其中-u后跟的是用户名,-p要求输入密码,回车后在输入密码处输入密码。
注意:这个mysql文件在/usr/bin目录下,与后面讲的启动文件/etc/init.d/mysql不是一个文件。

 

四、MySQL的几个重要目录
MySQL安装完成后不象SQL Server默认安装在一个目录,它的数据库文件、配置文件和命令文件分别在不同的目录,了解这些目录非常重要,尤其对于Linux的初学者,因为 Linux本身的目录结构就比较复杂,如果搞不清楚MySQL的安装目录那就无从谈起深入学习。
下面就介绍一下这几个目录。
1、数据库目录
/var/lib/mysql/
2、配置文件
/usr/share/mysql(mysql.server命令及配置文件)
3、相关命令
/usr/bin(mysqladmin mysqldump等命令)
4、启动脚本
/etc/rc.d/init.d/(启动脚本文件mysql的目录)
五、修改登录密码
MySQL默认没有密码,安装完毕增加密码的重要性是不言而喻的。
1、命令
usr/bin/mysqladmin -u root password 'new-password'
格式:mysqladmin -u用户名 -p旧密码 password 新密码
2、例子
例1:给root加个密码123456。
键入以下命令 :
[root@test1 local]# /usr/bin/mysqladmin -u root password 123456
注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。
3、测试是否修改成功
1)不用密码登录
[root@test1 local]# mysql
ERROR 1045: Access denied for user: 'root@localhost' (Using password: NO)
显示错误,说明密码已经修改。
2)用修改后的密码登录
[root@test1 local]# mysql -u root -p
Enter password: (输入修改后的密码123456)
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 4 to server version: 4.0.16-standard
Type 'help;' or 'h' for help. Type 'c' to clear the buffer.
mysql>
成功!
这是通过mysqladmin命令修改口令,也可通过修改库来更改口令。
六、启动与停止
1、启动
MySQL安装完成后启动文件mysql在/etc/init.d目录下,在需要启动时运行下面命令即可。
[root@test1 init.d]# /etc/init.d/mysql start
2、停止
/usr/bin/mysqladmin -u root -p shutdown
3、自动启动
1)察看mysql是否在自动启动列表中
[root@test1 local]# sbin/chkconfig --list
2)把MySQL添加到你系统的启动服务组里面去
[root@test1 local]# sbin/chkconfig --add mysql
3)把MySQL从启动服务组里面删除。
[root@test1 local]# sbin/chkconfig --del mysql

必赢备用网址 1

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

 

八、MySQL的常用操作
注意:MySQL中每个命令后都要以分号;结尾。
1、显示数据库
mysql> show databases;
+----------+
| Database |
+----------+
| mysql  |
| test   |
+----------+
2 rows in set (0.04 sec)
Mysql刚安装完有两个数据库:mysql和test。mysql库非常重要,它里面有MySQL的系统信息,我们改密码和新增用户,实际上就是用这个库中的相关表进行操作。
2、显示数据库中的表
mysql> use mysql; (打开库,对每个库进行操作就要打开此库,类似于foxpro )
Database changed
mysql> show tables;
+-----------------+
| Tables_in_mysql |
+-----------------+
| columns_priv  |
| db       |
| func      |
| host      |
| tables_priv   |
| user      |
+-----------------+
6 rows in set (0.01 sec)
3、显示数据表的结构:
describe 表名;
4、显示表中的记录:
select * from 表名;
例如:显示mysql库中user表中的纪录。所有能对MySQL用户操作的用户都在此表中。
Select * from user;

 

5、建库:
create database 库名;
例如:创建一个名字位dfg的库
mysql> create databases dfg;
6、建表:
use 库名;
create table 表名 (字段设定列表);
例如:在刚创建的dfg库中建立表name,表中有id(序号,自动增长),xm(姓名),xb(性别),csny(出身年月)四个字段
use dfg;
mysql> create table name (id int(3) auto_increment not null primary key, xm char(8),xb char(2),csny date);
可以用describe命令察看刚建立的表结构。
mysql> describe name;
+-------+---------+------+-----+---------+----------------+
| Field | Type  | Null | Key | Default | Extra     |
+-------+---------+------+-----+---------+----------------+
| id  | int(3) |   | PRI | NULL  | auto_increment |
| xm  | char(8) | YES |   | NULL  |        |
| xb  | char(2) | YES |   | NULL  |        |
| csny | date  | YES |   | NULL  |        |
+-------+---------+------+-----+---------+----------------+
7、增加记录
例如:增加几条相关纪录。
mysql> insert into name values('','张三','男','1971-10-01');
mysql> insert into name values('','白云','女','1972-05-20');
可用select命令来验证结果。
mysql> select * from name;
+----+------+------+------------+
| id | xm  | xb  | csny    |
+----+------+------+------------+
| 1 | 张三 | 男  | 1971-10-01 |
| 2 | 白云 | 女  | 1972-05-20 |
+----+------+------+------------+
8、修改纪录
例如:将张三的出生年月改为1971-01-10
mysql> update name set csny='1971-01-10' where xm='张三';
9、删除纪录
例如:删除张三的纪录。
mysql> delete from name where xm='张三';
10、删库和删表
drop database 库名;
drop table 表名

 

九、增加MySQL用户
格式:grant select on 数据库.* to 用户名@登录主机 identified by "密码"
例1、增加一个用户user_1密码为123,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MySQL,然后键入以下命令:
mysql> grant select,insert,update,delete on *.* to user_1@"%" Identified by "123";
例1增加的用户是十分危险的,如果知道了user_1的密码,那么他就可以在网上的任何一台电脑上登录你的MySQL数据库并对你的数据为所欲为了,解决办法见例2。
例2、增加一个用户user_2密码为123,让此用户只可以在localhost上登录,并可以对数据库dfg进行查询、插入、修改、删除的操作 (localhost指本地主机,即MySQL数据库所在的那台主机),这样用户即使用知道user_2的密码,他也无法从网上直接访问数据库,只能通过 MYSQL主机来操作dfg库。
mysql>grant select,insert,update,delete on dfg.* to user_2@localhost identified by "123";
用新增的用户如果登录不了MySQL,在登录时用如下命令:
mysql -u user_1 -p -h 192.168.113.50 (-h后跟的是要登录主机的ip地址)

 

十、备份与恢复
1、备份
例如:将上例创建的dfg库备份到文件back_dfg中
[root@test1 root]# cd /home/data/mysql (进入到库目录,本例库已由val/lib/mysql转到/home/data/mysql,见上述第七部分内容)
[root@test1 mysql]# mysqldump -u root -p --opt dfg > back_dfg
2、恢复
[root@test mysql]# mysql -u root -p ccc < back_dfg

L001-oldboy-mysql-dba-lesson01

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

 

在LINUX中安装 MySQL,可以在终端提示符后运行下列命令:

《sql应用重构》经典的书 ,思想,封顶境界!

sudo apt-get install mysql-server
sudo apt-get install mysql-client
sudo apt-get install php5-mysql
// 安装php5-mysql 是将php和mysql连接起来

 

一旦安装完成,MySQL 服务器应该自动启动。

mysql下载页面:

您可以在终端提示符后运行以下命令来检查 MySQL 服务器是否正在运行:
sudo netstat -tap | grep mysql
当您运行该命令时,您可以看到类似下面的行:
tcp 0 0 localhost.localdomain:mysql *:* LISTEN -

 

如果服务器不能正常运行,您可以通过下列命令启动它:
sudo /etc/init.d/mysql start  启动mysql

[root@web01 ~]# cd /usr/local/src/

我们可以用以下命令去查看当前Mysql的状态
sudo service mysql status

[root@web01 src]# wget http://101.44.1.120/files/2141000004483B18/cdn.mysql.com//archives/mysql-5.5/mysql-5.5.32-linux2.6-x86_64.tar.gz

进入mysql
$mysql -uroot -p 管理员密码

 

配置 MySQL 的管理员密码:
sudo mysqladmin -u root password newpassword

[root@web01 src]# tar xf mysql-5.5.32-linux2.6-x86_64.tar.gz

安装MySQL Administrator 图形界面
在新立得软件下搜索mysql找到
mysql-admin包,选择安装后就可以,在应用程序/编程就可以运行。
您也可以安装mysql 的图形化管理工具 sudo apt-get mysql-admin mysql-query-browser

[root@web01 src]# cp -R mysql-5.5.32-linux2.6-x86_64 /usr/local/mysql

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
配置 mysql,让它支持其它客户端访问,如果你不需要就不用修改。
登录到MySQL服务器端,在mysql库下执行增加用户操作:
格式:grant select on 数据库.* to 用户名@登录主机 identified by "密码"

[root@web01 src]# ll /usr/local/mysql

GRANT ALL ON dbname.* TO test@'%' IDENTIFIED BY '123456'
此命令创建用户test,并给它赋予访问数据库dbname的不受限制的权限,且可以在任何机器上访问

 

grant all on *.* to 'remote'@'172.16.21.39' identified by 'password';
如果要设置为任何客户端都可以以root连接的话,可以这么写:
grant all on *.* to 'root'@'%' identifiied by 'root的密码'

 

mysql>GRANT ALL PRIVILEGES ON *.* TO admin@localhost IDENTIFIED BY 'something' WITH GRANT OPTION;
mysql>GRANT ALL PRIVILEGES ON *.* TO admin@"%" IDENTIFIED BY 'something' WITH GRANT OPTION;
第二个或者用下面:
mysql>update user set host="%" where host="192.168.1.1";

[root@web01 ~]# cp /usr/local/mysql/support-files/my-huge.cnf /etc/my.cnf

类似这用方法的整理如下:
1。 改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"
mysql -u root -pvmwaremysql>use mysql;mysql>update user set host = '%' where user = 'root';mysql>select host, user from user;
2. 授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

 

但问题仍没有解决:

[root@web01 ~]# mkdir /var/lib/mysql

找到 命令   mysql> flush privileges    //使修改生效

[root@web01 ~]# mv /etc/my.cnf /var/lib/mysql/

                显示影响了零行。

[root@web01~]# vi /var/lib/mysql/my.cnf +40

问题依然没有解决,重新启动mysql 
sudo /etc/init.d/mysql restart
还是不行。

21 default-character-set = utf8

了解到mysql有本机绑定,找到问题所在。
查找文件
skip-networking
修改为
#skip-networking
保存并关闭文件。
编辑 /etc/mysql/my.cnf
sudo gedit /etc/mysql/my.cnf

40 datadir = /var/lib/mysql

# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 127.0.0.1

41 character_set_server = utf8

将”bind-address = 127.0.0.1“注释
sudo /etc/init.d/mysql restart
或者
service mysqld restart
重启即可远程访问

139 default-character = utf8

Mysql卸载:
apt-get autoremove mysql-server
apt-get autoremove mysql-client

 

首先试试
apt-get --reinstall install mysql-server???
不行时而且mysql关联少时,可以apt-get remove --purge mysql-server???然后再安装,关联多不能删时,dpkg -S /etc/init.d/mysql找到对应的包,apt-get -d --reinstall install mysql-server??? 然后将对应的deb解开将mysql复制过去
dpkg -x /var/cache/apt/archives/mysql-server???.deb /tmp/foo
cp /tmp/foo/etc/init.d/mysql /etc/init.d
还不行的话,终极解决是将/var/lib/dpkg/info下对应的东东删掉,删除和重装相应的包了事,而不会影响系统的
+++++++++++++++++++++++++++++++++++++++++++++++++++
修改数据库默认字符集以及解决phpmyadmin和mysql中文乱码:
安装后的数据库编码默认是latin1,这个在编码下,存储中文时是会乱码的,所以在使用时还得把数据库的字符集改成支持中文的字符集,下面以utf-8为例,简单记录下修改字符集需要的操作:
1) 登录数据库后,使用命令show variables like 'character%' 可以查看数据库使用字符集的情况,下面是在没有修改前mysql的字符集设置:
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | latin1                     |
| character_set_connection | latin1                     |
| character_set_database   | latin1                     |
| character_set_filesystem | binary                     |
| character_set_results    | latin1                     |
| character_set_server     | latin1                     |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |

[root@web01 ~]# useradd -M -s /sbin/nologin mysql

2) 要把字符集换成utf-8的,我们只要修改/etc/mysql/下的配置文件my.cnf。
首先停止mysql服务[sudo /etc/init.d/mysql stop],然后在my.cnf中加入下面的配置段:

[root@web01 ~]# id mysql

[client]
default-character-set = utf8
[mysqld_safe]
default-character-set=utf8
[mysqld]
default-character-set=utf8
[mysql]
default-character-set=utf8

[root@web01 ~]# chown -R mysql:mysql /var/lib/mysql/

3) 完成上面的修改,保存后重启mysql
[sudo service mysql restart]
重新登录mysql后,在执行:show variables like 'character%'; 字符集应该是变成了utf8
phpmyadmin的连接校对选用:utf8_general_ci 默认即可。这样配置完毕中文乱码可以解决,也可以用phpmyadmin管理mysql数据库了。
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++

 

Mysql安装:
sudo apt-get install mysql-server
sudo apt-get install mysql-client

[root@web01~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

[root@web01 mysql]# cd /usr/local/mysql

[root@web01 mysql]# ./scripts/mysql_install_db --user=mysql

[root@web01~]#

/usr/local/mysql/scripts/mysql_install_db  --defaults-file=/var/lib/mysql/my.cnf --user=mysql  #mysql初始化

[root@web01 ~]#

echo '/usr/local/mysql/bin/mysqld_safe --defaults-file=/var/lib/mysql/my.cnf &' >>/etc/rc.local

 

[root@web01 ~]#

/usr/local/mysql/bin/mysqld_safe --defaults-file=/var/lib/mysql/my.cnf &

[root@web01 ~]# ps -ef|grep mysql

#或者使用/etc/init.d来启动mysql

[root@web01 ~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

 

[root@web01 ~]# tailf /var/lib/mysql/web01.com.err  #启动后,这个日志一定要好好看看。

 

[root@web01 ~]# ln -s /usr/local/mysql/bin/mysqladmin /bin/mysqladmin

[root@web01 ~]# ln -s /usr/local/mysql/bin/mysqldump /bin/mysqldump

[root@web01 ~]# ln -s /usr/local/mysql/bin/mysql /bin/mysql

[root@web01 ~]# ln -s /usr/local/mysql/bin/mysqld_safe /bin/mysqld_safe

[root@web01 ~]# ln -s /usr/local/mysql/bin/mysqlbinlog /bin/mysqlbinlog

 

[root@web01 ~]# mysql -u root -S /tmp/mysql.sock

mysql>

use mysql;

show tables;

select * from userG;

 

[root@web01 ~]# mysqladmin -u root password 'testpassword'   #设置root密码

[root@web01 ~]# mysql -uroot -ptestpassword

mysql> select user,host,password from mysql.user;

delete from mysql.user where user='root' and host='web01.com';

delete from mysql.user where user='root' and host='::1';

use mysql; update user set password='*9F69E47E519D9CA02116BF5796684F7D0D45F8FA' where host='127.0.0.1';

select user,host,password from mysql.user; 

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

| user | host      | password                                  |

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

| root | localhost | *9F69E47E519D9CA02116BF5796684F7D0D45F8FA |

| root | 127.0.0.1 | *9F69E47E519D9CA02116BF5796684F7D0D45F8FA |

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

 

create database mywebsite;

show databases;

grant all on mywebsite.* to 'test'@'10.0.0.%' identified by 'test';

flush privileges;

show global variables like '%char%'; 

select user,host,password from mysql.user;

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

| user | host      | password                                  |

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

| root | localhost | *9F69E47E519D9CA02116BF5796684F7D0D45F8FA |

| root | 127.0.0.1 | *9F69E47E519D9CA02116BF5796684F7D0D45F8FA |

| test | 10.0.0.%  | *94BDCEBE19083CE2A1F959FD02F964C7AF4CFC29 |

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

 

update mysql.user set password=password('newpassword') where user='test';

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

来自为知笔记(Wiz)

附件列表