#tar zxvf mysql-5.0.18.tar.gz #cd mysql-5.0.18 #./configure --prefix=/usr/local/mysql --with-charset=gb2312 --with-extra-charsets=all #--prefix指定安装目录,让他支持中文,支持所有语 #指定安装路径为/usr/local/mysql,配置文件存放目录/etc,数据库存储目录/var/lib/mysql ./configure --prefix=/usr/local/mysql --sysconfdir=/etc --localstatedir=/var/lib/mysql (供参考) #make #make install #make clean #groupadd mysql #useradd -g mysql mysql (第一个mysql是组,第二个mysql是用户) #cd /usr/local/mysql #cp usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf (或cp /root/mysql-5.0.18 /support-files/my-huge.cnf.sh /etc/my.cnf 网络上是写括号内的,但我试了不行#根据自己主机的情况复制my-*.cnf的一个,huge是应用于内存在2G以上的情况。) #bin/mysql_install_db --user=mysql #建立基本数据库,必须指明为mysql用户,只有这一步才能在usr/local/mysql下出现var目录。出现如下: Preparing db table Preparing host table Preparing user table Preparing func table Preparing tables_priv table Preparing columns_priv table Installing all prepared tables Unknown suffix '@' used for variable 'port' (value '@MYSQL_TCP_PORT@') 080425 4:38:40 /usr/local/mysql/libexec/mysqld: Error while setting value '@MYSQL_TCP_PORT@' to 'port' Installation of grant tables failed! Examine the logs in /usr/local/mysql/var for more information. You can also try to start the mysqld daemon with: /usr/local/mysql/libexec/mysqld --skip-grant & You can use the command line tool /usr/local/mysql/bin/mysql to connect to the mysql database and look at the grant tables: shell> /usr/local/mysql/bin/mysql -u root mysql mysql> show tables Try 'mysqld --help' if you have problems with paths. Using --log gives you a log in /usr/local/mysql/var that may be helpful. The latest information about MySQL is available on the web at http://www.mysql.com Please consult the MySQL manual section: 'Problems running mysql_install_db', and the manual section that describes problems on your OS. Another information source is the MySQL email archive. Please check all of the above before mailing us! And if you do mail us, you MUST use the /usr/local/mysql/bin/mysqlbug script! # bin/mysqld_safe --user=mysql & #出现如下提示: [1] 23095 [root@localhost mysql]# Starting mysqld daemon with databases from /usr/local/mysql/var ###这样就停在这边,就是正常启动。如果想确认用下面命令 # ps -aux |grep mysql Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.3/FAQ root 23095 0.1 0.2 4408 1084 pts/1 S 04:44 0:00 /bin/sh bin/mysqld_safe --user=mysql mysql 23118 3.1 2.4 114464 12676 pts/1 Sl 04:44 0:00 /usr/local/mysql/libexec/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/var --user=mysql --pid-file=/usr/local/mysql/var/localhost.localdomain.pid --skip-locking --port=3306 --socket=/tmp/mysql.sock root 23128 0.0 0.1 5524 640 pts/1 R+ 04:44 0:00 grep mysql ###这样表示有mysql进程 #bin/mysql Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 to server version: 4.0.25-log Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> quit Bye ####只有mysql进程,这一步才能执行,因为最初mysql的root密码是空的,所以回车直接就进入。 #bin/mysqladmin -uroot password 123456 (设置mysql的root密码为123456) #[root@Linux mysql]# bin/mysql -u root -p (用新的密码可以进去,表示设置root密码成功) Enter password: (输入完新密码后变成如下:) Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 4 to server version: 4.0.25-log Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> #bin/mysqld_safe &或/usr/local/mysql/share/mysql/mysql.server start 启动mysql #/usr/local/mysql/share/mysql/mysql.server stop 停止mysql #ps -aux|grep mysql查看进程 #kill id号 ----这是杀mysql进程的,id号是在查看mysql进程里面看的到。 我们来修改一下mysql的启动的方式,让它以系统守护进程的方式开户服务 #cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld 这样下次就可以用/etc/init.d/mysqld start启动了 # bin/mysql -uroot -p Enter password: ERROR 2002: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) 这个是mysql没启动 # /etc/init.d/mysqld start (或/usr/local/mysql/mysql/share/mysql.server start这样启动) # bin/mysql -uroot -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 to server version: 4.0.25-log Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> show databases; +----------+ | Database | +----------+ | mysql | | test | +----------+ 2 rows in set (0.00 sec) mysql> #chkconfig --add mysqld 添加mysql为服务 #chkconfig --del mysqld 删除mysql服务 service mysqld restart #重新启动服务查看是否生效 chkconfig --list mysqld #查看是否345运行级别都打开mysql 完成!以上安装过程同样适用于mysql5的安装 笔者发现mysql5版本在安装后即可直接使用mysql命令进入数据库,而在4版本系列中,mysql路径并没有放入系统环境变量中,输入mysql系统会报找不到这命令的错误,因此笔者擅自修改了环境变量,把mysql的路径添加进环境变量中去。 修改profile文件,将mysql的路径添加到PATH变量中去。 vi /etc/profile if ! echo $PATH | /bin/egrep -q "(^|: )$1($|: )" ; then if [ "$2" = "after" ] ; then PATH=$PATH: $1:/usr/local/mysql/bin else PATH=$1: $PATH:/usr/local/mysql/bin 或 编辑/etc/profile文件: vi /etc/profile 在文件最后添加如下两行: PATH=$PATH:/usr/local/mysql/bin export PATH 执行下面的命令使所做的更改生效: . /etc/profile
小编推荐:欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术,请 点击这里注册账号,公开课频道价值万元IT培训教程免费学,让您少走弯路、事半功倍,好工作升职加薪!
免责声明:本站系公益性非盈利IT技术普及网,本文由投稿者转载自互联网的公开文章,文末均已注明出处,其内容和图片版权归原网站或作者所有,文中所述不代表本站观点,若有无意侵权或转载不当之处请从网站右下角联系我们处理,谢谢合作!