欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

mysql install in ubuntu

程序员文章站 2022-06-03 16:29:56
...
mysql server 5.1;
mysql Navigator
转载请注明出处:http://club.topsage.com/thread-2208018-1-1.html

如果你是LAMP平台开发人员,或者你是单纯想学MySQL数据库,安装完Ubuntu Linux后,接下了就得考虑如果安装Oracle (Sun) MySQL了,之后还要新建数据库用户,为数据库连接作准备。

Sun被Oracle收购后,MySQL也归属Oracle公司,不过,在Ubuntu里社区开源版的MySQL依然可以通过命令免费安装。安装MySQL前,我们首先更新一下系统,打开终端后执行如下命令:

   1. $sudo apt-get update
   2. $sudo apt-get upgrade

复制代码
安装MySQL数据库

在终端中执行如下命令安装MySQL数据库服务器及客户端软件:

   1. $sudo apt-get install mysql-server mysql-common mysql-client

复制代码
安装过程中,程序会要求为root用户输入密码。几分钟后就能安装完成。

如果你打算用PHP程序或是Perl连接你的MySQL数据库,这时候需要我们为Apache服务器安装php及perl的相关模块:

PHP的:

   1. $sudo apt-get install php5-mysql
   2. $sudo /etc/init.d/apache2 restart

复制代码
Perl5相关模块:

   1. $sudo apt-get install libdbd-mysql-perl

复制代码
如何连接MySQL数据库服务器?

当然是通过mysql命令连接最为方便快捷了,如果不太熟悉mysql命令,可以下载一个基于Web的MySQL管理工具phpMyAdmin。

打开终端,输入如下命令并执行:

   1. $mysql -u root -p

复制代码
mysql命令的-p参数要求输入密码。

    Enter password:
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 107
    Server version: 5.1.41-3ubuntu12.3 (Ubuntu)

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

    mysql>



看到上面的提示符就说明已经成功登录MySQL数据库服务器了,这个时候就可以对数据库及其中的表进行操作了。下载看几个常用的MySQL命令:

任务1:显示数据库列表

执行如下命令:

mysql> show databases;

你会得到类似如下的数据库列表

+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| wiki               |
| wikidb             |
| wpmu               |
+--------------------+
5 rows in set (0.02 sec)

mysql>

任务2:新建数据库

新建一个名称为 myapps 的数据库,执行:

mysql> create database myapps;

输出信息:

Query OK, 1 row affected (0.00 sec)

任务3:为myapps数据库添加新用户

mysql> GRANT ALL ON myapps.* TO vivek@localhost IDENTIFIED BY 'Add-Your-Password-Here';

查看日志文件

默认配置文件下MySQL的日志文件保存在 /var/log/mysql/error.log,查看日志内容:

$tail -f /var/log/mysql/error.log
$grep 'something' /var/log/mysql/error.log

更改MySQL配置

默认配置文件存储在/etc/mysql/my.cnf,使用vi编辑器打开之:

$sudo vi /etc/mysql/my.cnf

如果想把MySQL网络绑定到本机(192.168.1.5),只要在my.cnf配置文件中加入如下配置项:

   1. bind-address = 192.168.1.5

复制代码
保存并关闭vi编辑器。

如何启动、停止、重启MySQL服务器?

执行如下命令以重启、停止、启动MySQL服务器:

   1. $sudo service mysql restart
   2. $sudo service mysql stop
   3. $sudo service mysql start

复制代码
命令执行时可能会出现如下的输出信息:

mysql start/running, process 4930

也可以使用如下的命令格式执行这些操作:

   1. $sudo /etc/init.d/mysql start
   2. $sudo /etc/init.d/mysql stop
   3. $sudo /etc/init.d/mysql restart

==================================

[转载]MySql实现远程连接
(2011-09-14 17:32:58)
转载▼
标签:
it
分类: 数据库
1、进入mysql,创建一个新用户root,密码为root:

   格式:grant 权限 on 数据库名.表名 to 用户@登录主机 identified by "用户密码";
           grant select,update,insert,delete on *.* to root@192.168.1.12 identified by "root";

   原先数据表结构

    mysql> use mysql;
    Database changed
    mysql> select host,user,password from user;
    +-----------+------+-------------------------------------------+
    | host      | user | password                                  |
    +-----------+------+-------------------------------------------+
    | localhost | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
    +-----------+------+-------------------------------------------+

   执行上述语句后结果

    mysql> use mysql;
    Database changed
    mysql> select host,user,password from user;
    +--------------+------+-------------------------------------------+
    | host         | user | password                                  |
    +--------------+------+-------------------------------------------+
    | localhost    | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
    | 192.168.1.12 | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
    +--------------+------+-------------------------------------------+
    2 rows in set (0.00 sec)



   可以看到在user表中已有刚才创建的root用户。host字段表示登录的主机,其值可以用IP,也可用主机名,

   (1)有时想用本地IP登录,那么可以将以上的Host值改为自己的Ip即可。

2、实现远程连接(授权法)

   将host字段的值改为%就表示在任何客户端机器上能以root用户登录到mysql服务器,建议在开发时设为%。 
   update user set host = ’%’ where user = ’root’;

   将权限改为ALL PRIVILEGES

    mysql> use mysql;
    Database changed
    mysql> grant all privileges  on *.* to root@'%' identified by "root";
    Query OK, 0 rows affected (0.00 sec)

    mysql> select host,user,password from user;
    +--------------+------+-------------------------------------------+
    | host         | user | password                                  |
    +--------------+------+-------------------------------------------+
    | localhost    | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
    | 192.168.1.12 | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
    | %            | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
    +--------------+------+-------------------------------------------+
    3 rows in set (0.00 sec)

这样机器就可以以用户名root密码root远程访问该机器上的MySql.

3、实现远程连接(改表法)

use mysql;

update user set host = '%' where user = 'root';

这样在远端就可以通过root用户访问Mysql.
但任不行,最后
=========
Ubuntu10.04上自带的MySQL,执行了
root@ubuntu:~#sudo apt-get install mysql
安装完mysql-server

启动mysql
root@ubuntu:~#/etc/init.d/mysql start

本地可以连接进入数据库。
root@ubuntu:~#mysql -uroot -p

设置了远程访问权限:
mysql> grant all PRIVILEGES on *.* to admin@’%’ identified by ‘123456′;
Query OK, 0 rows affected (0.04 sec)
=====================
mysql> grant all privileges on myapps.* to 'net5100'@'%' identified by '123456' with grant option;

mysql> use information_schema
mysql> select * from user_privileges;
查询到有下面的结果:'admin’@'%',说明mysql已经授权远程连接。



Ubuntu上查看Mysql网络连接:
root@ubuntu:~# netstat -an |grep 3306
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN
本地端口也在监听

root@ubuntu:~# ufw status
Firewall not loaded
本地防火墙未打开

后来在网上找到一个解决办法:
查看/etc/mysql/my.cnf找到bind-address才发现配置的是 127.0.0.1(bind-address=127.0.0.1),直接改为bind-address=192.168.0.xxx(本机ip),然 后再查看3306端口打开了,ok,可以正常连接了
====mysql import from sql file=====
1,mysql> use myapps;
\. shortword source
2,mysql> \. /home/jimmy/myapps.sql

mysql> \. /home/jimmy/sqlscripts/mysql/jpetstore-mysql-schema.sql
mysql> \. /home/jimmy/sqlscripts/mysql/jpetstore-mysql-dataload.sql


====mysql export db into a sql file=====
jimmy@jimmy:~$ mysqldump -u jimmy -p myapps>/home/jimmy/myapps_export.sql;
Enter password:


=======connect mysql======
jimmy@jimmy:~$ mysql -h 10.36.64.159 -u jimmy -p
Enter password:123456
mysql> show database;
mysql> use myapps;