运行一下命令安装mysql.
$ sudo apt-get install mysql-server
设置root密码:
$ sudo /etc/init.d/mysql reset-password
让root可以远程登陆:
登陆mysql控制台,然后运行:
mysql> use mysql;
mysql> update `user` set `host`="localhost" and `user`="root";
mysql> flush privileges;
修改/etc/mysql/my.cnf
$ sudo vi /etc/mysql/my.cnf
注释掉 bind-address = 127.0.0.1
#bind-address = 127.0.0.1
然后重启mysqld。
忘记root密码的处理办法:
默认会创建一个叫debian-sys-maint的用户,临时密码存在/etc/mysql/debian.cnf.取得临时密码,然后登陆mysql控制台:
$ mysql -udebian-sys-maint -p
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'abc123' WITH GRANT OPTION;
mysql> flush privileges;
ubuntu下MySQL安装指南(源码和一般安装两种)
(2008-11-03 20:01:52)
一:一般安装
要安装 MySQL,可以在终端提示符后运行下列命令:
sudo apt-get install mysql-server mysql-client
一旦安装完成,MySQL 服务器应该自动启动。您可以在终端提示符后运行以下命令来检查 MySQL 服务器是否正在运行:
sudo netstat -tap | grep mysql
当您运行该命令时,您可以看到类似下面的行:
tcp 0 0 localhost.localdomain:mysql *:* LISTEN -
如果服务器不能正常运行,您可以通过下列命令启动它:
sudo /etc/init.d/mysql restart
配置 MySQL 的管理员密码
sudo mysqladmin -u root password newpassword
二,从源码安装
下载Mysql 5.0源码(不用说了吧)
wget http://dev.mysql.com/get/Downloads/MySQL-5.0/mysql-5.0.16.tar.gz/from/http://mysql.localhost.net.ar/ tar xzvf mysql-5.0.16.tar.gz cd mysql-5.0.16/
[编辑] 安装必要的包
sudo apt-get install build-essential
[编辑] 安装开发库
如果不太确定哪一个才是真正需要的,把这几个都安装进去
sudo apt-get install libncurses5 libncurses5-dev
不安这些包,将无法编译mysql服务器
[编辑] 建立用户和工作组
sudo groupadd mysql sudo useradd -g mysql mysql
[编辑] 优化编译n
编译的时候可以针对不同类型的CPU进行参数设置,以提高数据库系统性能,参数设置通过修改CHOST, CFLAGS, CXXFLAGS来实现,如果您不清楚自己的CPU型号,可以选用X86通用设置
attachment:IconsPage/IconWarning3.png 针对某些特殊CPU的参数设置编译没有经过测试,如果它编写成功,就没问题了.如果不行,请选用以下三种方法。
export CHOST="i686-pc-linux-gnu" export CFLAGS="-march=athlon-xp -O3 -pipe -fomit-frame-pointer -msse -mmmx -mfpmath=sse" export CXXFLAGS="-march=athlon-xp -O3 -pipe -fomit-frame-pointer -msse -mmmx -mfpmath=sse -felide-constructors -fno-exceptions -fno-rtti" export CXX=gcc
export CHOST="i686-pc-linux-gnu" export CFLAGS="-march=pentium4 -mcpu=pentium4 -O3 -pipe -fomit-frame-pointer -msse -mmmx -mfpmath=sse" export CXXFLAGS="-march=pentium4 -mcpu=pentium4 -O3 -pipe -fomit-frame-pointer -msse -mmmx -mfpmath=sse -felide-constructors -fno-exceptions -fno-rtti" export CXX=gcc
export CHOST="i686-pc-linux-gnu" export CFLAGS="-mcpu=i686 -march=i686 -O3 -pipe -fomit-frame-pointer" export CXX=gcc
如果您想进行一些调试,可以将-fomit-frame-pointer参数略去,如果不是,请将它留在那里,因为这样可以使mysql得到更快的运行速度
[编辑] 配置
这是一个完整的设置
请在mysql5源码所在的目录里进行配置操作
您可以根据自己的需要增加/删除一些选项,下面这个例子只是默认的安装设置
./configure \ --prefix=/usr/local/mysql \ --with-mysqld-user=mysql \ --without-debug \ --with-client-ldflags=-all-static \ --with-mysqld-ldflags=-all-static \ --disable-shared \ --localstatedir=/usr/local/mysql/data \ --with-extra-charsets=none \ --enable-assembler \ --with-unix-socket-path=/tmp/mysql.socket make sudo make install
这将把mysql安装在/usr/local/mysql目录里,数据文件将保存在/usr/local/mysql/data目录里
[编辑] my.conf 配置文件
将预设的配置复制过来,如果准备构建小型数据库建议使用my-medium.cnf
sudo cp support-files/my-medium.cnf /etc/my.cnf
同样,您也可以根据自己的需求对这个配置进行个性化定制
[编辑] 建立GRANT表
您必须建立GRANT表,建立它的办法很简单
sudo /usr/local/mysql/bin/mysql_install_db --user=mysql
[编辑] 更改所有者
sudo chown -R root /usr/local/mysql sudo chown -R mysql /usr/local/mysql/var sudo chgrp -R mysql /usr/local/mysql
[编辑] 测试
启动数据库服务器
/usr/local/mysql/bin/mysqld_safe -user=mysql&
为数据库管理员试设密码(该密码仅对数据库有效,不影操作系统的密码设置)
/usr/local/mysql/bin/mysqladmin -u root password new_password
进行登录测试
/usr/local/mysql/bin/mysql
您可以在适当的地方为/usr/local/mysql/bin
建立链接,以便于在Shell下通过mysql, mysqldump, mysqladmin及其他一些命令来控制mysql的运行
[编辑] 让mysql随系统自动启动
sudo cp support-files/mysql.server /etc/init.d/mysql sudo chmod +x /etc/init.d/mysql sudo update-rc.d mysql defaults
重启之后您可以再检查一遍以确认您的mysql服务器能够正常运行
(应该翻译成:如果以上步骤都没问题,当您重启的时候,mysql应该可以了.)
手动安装mysql
shell> groupadd mysql
shell> useradd -g mysql mysql
shell> gunzip < mysql-VERSION.tar.gz | tar -xvf -
shell> cd mysql-VERSION
shell> ./configure --prefix=/usr/local/mysql
shell> make
shell> make install
shell> cp support-files/my-medium.cnf /etc/my.cnf
shell> cd /usr/local/mysql
shell> bin/mysql_install_db --user=mysql
shell> chown -R root .
shell> chown -R mysql var
shell> chgrp -R mysql .
shell> bin/mysqld_safe --user=mysql &
configure时遇到checking whether the C compiler (gcc ) works... no
configure: error: installation or configuration problem: C compiler cannot create executables.
解决办法
sudo apt-get build-dep fcitx
或者自动安装
安装MySQL
sudo apt-get install mysql-server
配置MySQL
注意,在Ubuntu下MySQL缺省是只允许本地访问的,如果你要其他机器也能够访问的话,那么需要改变/etc/mysql/my.cnf配置文件了!下面我们一步步地来:
默认的MySQL安装之后根用户是没有密码的,所以首先用根用户进入:
$mysql -u root
在这里之所以用-u root是因为我现在是一般用户(kwj),如果不加-u root的话,mysql会以为是kwj在登录。注意,我在这里没有进入根用户模式,因为没必要。一般来说,对mysql中的数据库进行操作,根本没必要进入根用户模式,只有在设置时才有这种可能。
进入mysql之后,最要紧的就是要设置Mysql中的root用户密码了,否则,Mysql服务无安全可言了。
mysql> GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY "123456";
这样的话,就设置好了MySQL中的root用户密码了,然后就用root用户建立你所需要的数据库。我这里就以test为例:
mysql>CREATE DATABASE test;
mysql>GRANT select,insert,update,delete,create,references,index,alert,Lock tables ON test.* TO test_root@localhost IDENTIFIED BY "123456";
这样就建立了一个test_roots的用户,它对数据库test有着全部权限。以后就用test_root来对test数据库进行管理,而无需要再用root用户了,而该用户的权限也只被限定在test数据库中。
mysql>GRANT ALL PRIVILEGES ON test.* TO test_root@"%" IDENTIFIED BY "123456";
允许test_root用户可以从任意机器上登入MySQL。